{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "283025d5",
   "metadata": {},
   "outputs": [],
   "source": [
    "import warnings\n",
    "warnings.filterwarnings('ignore')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "73bd3553",
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "import gc\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "import re\n",
    "import time\n",
    "from scipy import stats\n",
    "import matplotlib.pyplot as plt\n",
    "import category_encoders as ce\n",
    "import networkx as nx\n",
    "import pickle\n",
    "import lightgbm as lgb\n",
    "import catboost as cat\n",
    "import xgboost as xgb\n",
    "from datetime import timedelta\n",
    "from gensim.models import Word2Vec\n",
    "from io import StringIO\n",
    "from tqdm import tqdm\n",
    "from lightgbm import LGBMClassifier\n",
    "from lightgbm import log_evaluation, early_stopping\n",
    "from sklearn.metrics import roc_curve\n",
    "from scipy.stats import chi2_contingency, pearsonr\n",
    "from sklearn.preprocessing import StandardScaler, OneHotEncoder, LabelEncoder\n",
    "from sklearn.feature_extraction.text import TfidfVectorizer, CountVectorizer\n",
    "from sklearn.feature_extraction import FeatureHasher\n",
    "from sklearn.model_selection import StratifiedKFold, KFold, train_test_split, GridSearchCV\n",
    "from category_encoders import TargetEncoder\n",
    "from sklearn.decomposition import TruncatedSVD\n",
    "from autogluon.tabular import TabularDataset, TabularPredictor, FeatureMetadata\n",
    "from autogluon.features.generators import AsTypeFeatureGenerator, BulkFeatureGenerator, DropUniqueFeatureGenerator, FillNaFeatureGenerator, PipelineFeatureGenerator\n",
    "from autogluon.features.generators import CategoryFeatureGenerator, IdentityFeatureGenerator, AutoMLPipelineFeatureGenerator\n",
    "from autogluon.common.features.types import R_INT, R_FLOAT\n",
    "from autogluon.core.metrics import make_scorer"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8440031f",
   "metadata": {},
   "source": [
    "# 数据加载"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "cf7f31e8",
   "metadata": {},
   "source": [
    "## 训练集目标客户加载"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "id": "ca3bad1e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>DATA_DAT</th>\n",
       "      <th>CUST_NO</th>\n",
       "      <th>FLAG</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>20250630</td>\n",
       "      <td>2faac6549cf552d128f8bec626c99240</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>20250630</td>\n",
       "      <td>42767ba2f4c8963e17fbf91e5007b626</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>20250630</td>\n",
       "      <td>af02816658b8211ca6128b2239feb8ac</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>20250630</td>\n",
       "      <td>cb9e2a9ace6608fb51cb68632780362d</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>20250630</td>\n",
       "      <td>2c0feec8fa0ffb75831f566d0797a8b4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   DATA_DAT                           CUST_NO  FLAG\n",
       "0  20250630  2faac6549cf552d128f8bec626c99240     1\n",
       "1  20250630  42767ba2f4c8963e17fbf91e5007b626     1\n",
       "2  20250630  af02816658b8211ca6128b2239feb8ac     1\n",
       "3  20250630  cb9e2a9ace6608fb51cb68632780362d     1\n",
       "4  20250630  2c0feec8fa0ffb75831f566d0797a8b4     1"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_target_cust = pd.read_csv('../Train_Data/TRAIN_TARGET_INFO.csv')\n",
    "train_target_cust.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9450f7e7",
   "metadata": {},
   "source": [
    "## 测试集目标客户加载"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "id": "d0e83452",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>DATA_DAT</th>\n",
       "      <th>CUST_NO</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>20250731</td>\n",
       "      <td>13ef4241a1959ccbcf8d8a30f0ed9d50</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>20250731</td>\n",
       "      <td>029dede087234ee034590abefc4731a9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>20250731</td>\n",
       "      <td>929838a9271aa18da0ad8cb5154ce591</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>20250731</td>\n",
       "      <td>51b04b6d47643e0f5303c38a429557d5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>20250731</td>\n",
       "      <td>a54db8a4f36e43e9390cf3e43d45f308</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   DATA_DAT                           CUST_NO\n",
       "0  20250731  13ef4241a1959ccbcf8d8a30f0ed9d50\n",
       "1  20250731  029dede087234ee034590abefc4731a9\n",
       "2  20250731  929838a9271aa18da0ad8cb5154ce591\n",
       "3  20250731  51b04b6d47643e0f5303c38a429557d5\n",
       "4  20250731  a54db8a4f36e43e9390cf3e43d45f308"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "test_target_cust = pd.read_csv('../DATA/A_TARGET.csv')\n",
    "test_target_cust.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "850cb671",
   "metadata": {},
   "source": [
    "## 特征文件加载"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "eef572c1",
   "metadata": {},
   "source": [
    "### 通用pkl加载函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "id": "1e262d1e",
   "metadata": {},
   "outputs": [],
   "source": [
    "class FeatureLoader:\n",
    "    \"\"\"\n",
    "    特征文件加载器\n",
    "    支持批量加载feature目录下的所有pkl文件\n",
    "    \"\"\"\n",
    "    \n",
    "    def __init__(self, feature_dir='./feature'):\n",
    "        \"\"\"\n",
    "        初始化加载器\n",
    "        \n",
    "        参数:\n",
    "        - feature_dir: 特征文件目录路径\n",
    "        \"\"\"\n",
    "        self.feature_dir = feature_dir\n",
    "        self.features_dict = {}\n",
    "        self.feature_info = {}\n",
    "        \n",
    "    def load_single_feature(self, file_path):\n",
    "        \"\"\"\n",
    "        加载单个pkl特征文件\n",
    "        \n",
    "        参数:\n",
    "        - file_path: pkl文件路径\n",
    "        \n",
    "        返回:\n",
    "        - DataFrame: 特征数据\n",
    "        \"\"\"\n",
    "        try:\n",
    "            with open(file_path, 'rb') as f:\n",
    "                data = pickle.load(f)\n",
    "            \n",
    "            if not isinstance(data, pd.DataFrame):\n",
    "                raise ValueError(f\"文件 {file_path} 不是DataFrame格式\")\n",
    "            \n",
    "            return data\n",
    "        except Exception as e:\n",
    "            print(f\"加载文件 {file_path} 失败: {str(e)}\")\n",
    "            return None\n",
    "    \n",
    "    def load_all_features(self, pattern='*.pkl'):\n",
    "        \"\"\"\n",
    "        批量加载所有特征文件\n",
    "        \n",
    "        参数:\n",
    "        - pattern: 文件匹配模式\n",
    "        \n",
    "        返回:\n",
    "        - dict: {文件名: DataFrame}\n",
    "        \"\"\"\n",
    "        if not os.path.exists(self.feature_dir):\n",
    "            print(f\"目录不存在: {self.feature_dir}\")\n",
    "            return {}\n",
    "        \n",
    "        pkl_files = [f for f in os.listdir(self.feature_dir) if f.endswith('.pkl')]\n",
    "        \n",
    "        if not pkl_files:\n",
    "            print(f\"未找到pkl文件在目录: {self.feature_dir}\")\n",
    "            return {}\n",
    "        \n",
    "        print(f\"发现 {len(pkl_files)} 个特征文件\")\n",
    "        print(\"=\"*80)\n",
    "        \n",
    "        for pkl_file in pkl_files:\n",
    "            file_path = os.path.join(self.feature_dir, pkl_file)\n",
    "            file_name = os.path.splitext(pkl_file)[0]\n",
    "            \n",
    "            print(f\"\\n正在加载: {pkl_file}\")\n",
    "            data = self.load_single_feature(file_path)\n",
    "            \n",
    "            if data is not None:\n",
    "                self.features_dict[file_name] = data\n",
    "                \n",
    "                # 记录文件信息\n",
    "                self.feature_info[file_name] = {\n",
    "                    'file_path': file_path,\n",
    "                    'file_size_mb': os.path.getsize(file_path) / 1024 / 1024,\n",
    "                    'shape': data.shape,\n",
    "                    'memory_mb': data.memory_usage(deep=True).sum() / 1024 / 1024,\n",
    "                    'columns': data.columns.tolist()\n",
    "                }\n",
    "                \n",
    "                print(f\"  - 形状: {data.shape}\")\n",
    "                print(f\"  - 文件大小: {self.feature_info[file_name]['file_size_mb']:.2f} MB\")\n",
    "                print(f\"  - 内存占用: {self.feature_info[file_name]['memory_mb']:.2f} MB\")\n",
    "        \n",
    "        print(\"\\n\" + \"=\"*80)\n",
    "        print(f\"成功加载 {len(self.features_dict)} 个特征文件\")\n",
    "        \n",
    "        return self.features_dict\n",
    "    \n",
    "    def get_feature_summary(self):\n",
    "        \"\"\"\n",
    "        获取所有特征文件的汇总信息\n",
    "        \n",
    "        返回:\n",
    "        - DataFrame: 汇总表\n",
    "        \"\"\"\n",
    "        if not self.feature_info:\n",
    "            print(\"请先加载特征文件\")\n",
    "            return None\n",
    "        \n",
    "        summary_data = []\n",
    "        for name, info in self.feature_info.items():\n",
    "            summary_data.append({\n",
    "                '特征文件': name,\n",
    "                '样本数': info['shape'][0],\n",
    "                '特征数': info['shape'][1] - 1 if 'CUST_NO' in info['columns'] else info['shape'][1],\n",
    "                '文件大小(MB)': round(info['file_size_mb'], 2),\n",
    "                '内存占用(MB)': round(info['memory_mb'], 2)\n",
    "            })\n",
    "        \n",
    "        summary_df = pd.DataFrame(summary_data)\n",
    "        summary_df = summary_df.sort_values('特征数', ascending=False).reset_index(drop=True)\n",
    "        \n",
    "        # 添加汇总行\n",
    "        total_row = pd.DataFrame([{\n",
    "            '特征文件': '总计',\n",
    "            '样本数': '-',\n",
    "            '特征数': summary_df['特征数'].sum(),\n",
    "            '文件大小(MB)': round(summary_df['文件大小(MB)'].sum(), 2),\n",
    "            '内存占用(MB)': round(summary_df['内存占用(MB)'].sum(), 2)\n",
    "        }])\n",
    "        \n",
    "        summary_df = pd.concat([summary_df, total_row], ignore_index=True)\n",
    "        \n",
    "        return summary_df"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0ab626ec",
   "metadata": {},
   "source": [
    "### 加载训练集特征文件"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "id": "c530b6ca",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "特征加载器已初始化\n",
      "发现 10 个特征文件\n",
      "================================================================================\n",
      "\n",
      "正在加载: TRAIN_AGET_PAY_features.pkl\n",
      "  - 形状: (4400, 47)\n",
      "  - 文件大小: 1.69 MB\n",
      "  - 内存占用: 1.92 MB\n",
      "\n",
      "正在加载: TRAIN_ASSET_features.pkl\n",
      "  - 形状: (48417, 139)\n",
      "  - 文件大小: 51.50 MB\n",
      "  - 内存占用: 53.98 MB\n",
      "\n",
      "正在加载: TRAIN_CCD_TR_DTL_features.pkl\n",
      "  - 形状: (169, 48)\n",
      "  - 文件大小: 0.07 MB\n",
      "  - 内存占用: 0.08 MB\n",
      "\n",
      "正在加载: TRAIN_MB_PAGEVIEW_DTL_features.pkl\n",
      "  - 形状: (24754, 503)\n",
      "  - 文件大小: 95.09 MB\n",
      "  - 内存占用: 96.34 MB\n",
      "\n",
      "正在加载: TRAIN_MB_TRNFLW_QRYTRNFLW_features.pkl\n",
      "  - 形状: (30002, 239)\n",
      "  - 文件大小: 55.26 MB\n",
      "  - 内存占用: 56.80 MB\n",
      "\n",
      "正在加载: TRAIN_NATURE_features.pkl\n",
      "  - 形状: (51397, 26)\n",
      "  - 文件大小: 10.35 MB\n",
      "  - 内存占用: 12.99 MB\n",
      "\n",
      "正在加载: TRAIN_PROD_HOLD_features.pkl\n",
      "  - 形状: (49448, 41)\n",
      "  - 文件大小: 14.29 MB\n",
      "  - 内存占用: 16.84 MB\n",
      "\n",
      "正在加载: TRAIN_TR_APS_DTL_features.pkl\n",
      "  - 形状: (48608, 309)\n",
      "  - 文件大小: 115.11 MB\n",
      "  - 内存占用: 117.61 MB\n",
      "\n",
      "正在加载: TRAIN_TR_IBTF_features.pkl\n",
      "  - 形状: (26375, 86)\n",
      "  - 文件大小: 17.29 MB\n",
      "  - 内存占用: 18.64 MB\n",
      "\n",
      "正在加载: TRAIN_TR_TPAY_features.pkl\n",
      "  - 形状: (30926, 65)\n",
      "  - 文件大小: 15.08 MB\n",
      "  - 内存占用: 16.66 MB\n",
      "\n",
      "================================================================================\n",
      "成功加载 10 个特征文件\n",
      "\n",
      "特征文件汇总:\n",
      "                                  特征文件    样本数   特征数  文件大小(MB)  内存占用(MB)\n",
      "0       TRAIN_MB_PAGEVIEW_DTL_features  24754   502     95.09     96.34\n",
      "1            TRAIN_TR_APS_DTL_features  48608   308    115.11    117.61\n",
      "2   TRAIN_MB_TRNFLW_QRYTRNFLW_features  30002   238     55.26     56.80\n",
      "3                 TRAIN_ASSET_features  48417   138     51.50     53.98\n",
      "4               TRAIN_TR_IBTF_features  26375    85     17.29     18.64\n",
      "5               TRAIN_TR_TPAY_features  30926    64     15.08     16.66\n",
      "6            TRAIN_CCD_TR_DTL_features    169    47      0.07      0.08\n",
      "7              TRAIN_AGET_PAY_features   4400    46      1.69      1.92\n",
      "8             TRAIN_PROD_HOLD_features  49448    40     14.29     16.84\n",
      "9                TRAIN_NATURE_features  51397    25     10.35     12.99\n",
      "10                                  总计      -  1493    375.73    391.86\n",
      "  - 形状: (48608, 309)\n",
      "  - 文件大小: 115.11 MB\n",
      "  - 内存占用: 117.61 MB\n",
      "\n",
      "正在加载: TRAIN_TR_IBTF_features.pkl\n",
      "  - 形状: (26375, 86)\n",
      "  - 文件大小: 17.29 MB\n",
      "  - 内存占用: 18.64 MB\n",
      "\n",
      "正在加载: TRAIN_TR_TPAY_features.pkl\n",
      "  - 形状: (30926, 65)\n",
      "  - 文件大小: 15.08 MB\n",
      "  - 内存占用: 16.66 MB\n",
      "\n",
      "================================================================================\n",
      "成功加载 10 个特征文件\n",
      "\n",
      "特征文件汇总:\n",
      "                                  特征文件    样本数   特征数  文件大小(MB)  内存占用(MB)\n",
      "0       TRAIN_MB_PAGEVIEW_DTL_features  24754   502     95.09     96.34\n",
      "1            TRAIN_TR_APS_DTL_features  48608   308    115.11    117.61\n",
      "2   TRAIN_MB_TRNFLW_QRYTRNFLW_features  30002   238     55.26     56.80\n",
      "3                 TRAIN_ASSET_features  48417   138     51.50     53.98\n",
      "4               TRAIN_TR_IBTF_features  26375    85     17.29     18.64\n",
      "5               TRAIN_TR_TPAY_features  30926    64     15.08     16.66\n",
      "6            TRAIN_CCD_TR_DTL_features    169    47      0.07      0.08\n",
      "7              TRAIN_AGET_PAY_features   4400    46      1.69      1.92\n",
      "8             TRAIN_PROD_HOLD_features  49448    40     14.29     16.84\n",
      "9                TRAIN_NATURE_features  51397    25     10.35     12.99\n",
      "10                                  总计      -  1493    375.73    391.86\n"
     ]
    }
   ],
   "source": [
    "# 创建加载器实例\n",
    "train_loader = FeatureLoader(feature_dir='./feature/Train')\n",
    "print(\"特征加载器已初始化\")\n",
    "\n",
    "# 加载所有特征文件\n",
    "train_features_dict = train_loader.load_all_features()\n",
    "\n",
    "# 查看特征文件汇总\n",
    "train_summary_df = train_loader.get_feature_summary()\n",
    "print(\"\\n特征文件汇总:\")\n",
    "print(train_summary_df)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "333e5a95",
   "metadata": {},
   "source": [
    "### 加载测试集特征文件"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "id": "ed5acaf8",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "特征加载器已初始化\n",
      "发现 10 个特征文件\n",
      "================================================================================\n",
      "\n",
      "正在加载: A_AGET_PAY_features.pkl\n",
      "  - 形状: (530, 47)\n",
      "  - 文件大小: 0.21 MB\n",
      "  - 内存占用: 0.23 MB\n",
      "\n",
      "正在加载: A_ASSET_features.pkl\n",
      "  - 形状: (5624, 139)\n",
      "  - 文件大小: 5.99 MB\n",
      "  - 内存占用: 6.27 MB\n",
      "\n",
      "正在加载: A_CCD_TR_DTL_features.pkl\n",
      "  - 形状: (18, 48)\n",
      "  - 文件大小: 0.01 MB\n",
      "  - 内存占用: 0.01 MB\n",
      "\n",
      "正在加载: A_MB_PAGEVIEW_DTL_features.pkl\n",
      "  - 形状: (2753, 503)\n",
      "  - 文件大小: 10.60 MB\n",
      "  - 内存占用: 10.71 MB\n",
      "\n",
      "正在加载: A_MB_TRNFLW_QRYTRNFLW_features.pkl\n",
      "  - 形状: (3128, 239)\n",
      "  - 文件大小: 5.77 MB\n",
      "  - 内存占用: 5.92 MB\n",
      "\n",
      "正在加载: A_NATURE_features.pkl\n",
      "  - 形状: (5975, 26)\n",
      "  - 文件大小: 1.21 MB\n",
      "  - 内存占用: 1.51 MB\n",
      "\n",
      "正在加载: A_PROD_HOLD_features.pkl\n",
      "  - 形状: (5741, 41)\n",
      "  - 文件大小: 1.66 MB\n",
      "  - 内存占用: 1.95 MB\n",
      "\n",
      "正在加载: A_TR_APS_DTL_features.pkl\n",
      "  - 形状: (5616, 309)\n",
      "  - 文件大小: 13.29 MB\n",
      "  - 内存占用: 13.57 MB\n",
      "\n",
      "正在加载: A_TR_IBTF_features.pkl\n",
      "  - 形状: (2981, 86)  - 形状: (2981, 86)\n",
      "  - 文件大小: 1.96 MB\n",
      "  - 内存占用: 2.11 MB\n",
      "\n",
      "正在加载: A_TR_TPAY_features.pkl\n",
      "  - 形状: (3595, 65)\n",
      "  - 文件大小: 1.76 MB\n",
      "  - 内存占用: 1.94 MB\n",
      "\n",
      "================================================================================\n",
      "成功加载 10 个特征文件\n",
      "\n",
      "特征文件汇总:\n",
      "                              特征文件   样本数   特征数  文件大小(MB)  内存占用(MB)\n",
      "0       A_MB_PAGEVIEW_DTL_features  2753   502     10.60     10.71\n",
      "1            A_TR_APS_DTL_features  5616   308     13.29     13.57\n",
      "2   A_MB_TRNFLW_QRYTRNFLW_features  3128   238      5.77      5.92\n",
      "3                 A_ASSET_features  5624   138      5.99      6.27\n",
      "4               A_TR_IBTF_features  2981    85      1.96      2.11\n",
      "5               A_TR_TPAY_features  3595    64      1.76      1.94\n",
      "6            A_CCD_TR_DTL_features    18    47      0.01      0.01\n",
      "7              A_AGET_PAY_features   530    46      0.21      0.23\n",
      "8             A_PROD_HOLD_features  5741    40      1.66      1.95\n",
      "9                A_NATURE_features  5975    25      1.21      1.51\n",
      "10                              总计     -  1493     42.46     44.22\n",
      "\n",
      "  - 文件大小: 1.96 MB\n",
      "  - 内存占用: 2.11 MB\n",
      "\n",
      "正在加载: A_TR_TPAY_features.pkl\n",
      "  - 形状: (3595, 65)\n",
      "  - 文件大小: 1.76 MB\n",
      "  - 内存占用: 1.94 MB\n",
      "\n",
      "================================================================================\n",
      "成功加载 10 个特征文件\n",
      "\n",
      "特征文件汇总:\n",
      "                              特征文件   样本数   特征数  文件大小(MB)  内存占用(MB)\n",
      "0       A_MB_PAGEVIEW_DTL_features  2753   502     10.60     10.71\n",
      "1            A_TR_APS_DTL_features  5616   308     13.29     13.57\n",
      "2   A_MB_TRNFLW_QRYTRNFLW_features  3128   238      5.77      5.92\n",
      "3                 A_ASSET_features  5624   138      5.99      6.27\n",
      "4               A_TR_IBTF_features  2981    85      1.96      2.11\n",
      "5               A_TR_TPAY_features  3595    64      1.76      1.94\n",
      "6            A_CCD_TR_DTL_features    18    47      0.01      0.01\n",
      "7              A_AGET_PAY_features   530    46      0.21      0.23\n",
      "8             A_PROD_HOLD_features  5741    40      1.66      1.95\n",
      "9                A_NATURE_features  5975    25      1.21      1.51\n",
      "10                              总计     -  1493     42.46     44.22\n"
     ]
    }
   ],
   "source": [
    "# 创建加载器实例\n",
    "test_loader = FeatureLoader(feature_dir='./feature/A')\n",
    "print(\"特征加载器已初始化\")\n",
    "\n",
    "# 加载所有特征文件\n",
    "test_features_dict = test_loader.load_all_features()\n",
    "\n",
    "# 查看特征文件汇总\n",
    "test_summary_df = test_loader.get_feature_summary()\n",
    "print(\"\\n特征文件汇总:\")\n",
    "print(test_summary_df)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "62051560",
   "metadata": {},
   "source": [
    "# 建模训练"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8827853b",
   "metadata": {},
   "source": [
    "## 数据合并与预处理"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "id": "ec3d20d6",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "====================================================================================================\n",
      "步骤1: 数据合并\n",
      "====================================================================================================\n",
      "\n",
      "开始合并所有特征...\n",
      "====================================================================================================\n",
      "\n",
      "====================================================================================================\n",
      "第1步: 合并训练集特征\n",
      "====================================================================================================\n",
      "\n",
      "正在合并训练集...\n",
      "----------------------------------------------------------------------------------------------------\n",
      "初始形状: (51397, 3)\n",
      "特征文件数量: 10\n",
      "\n",
      "  [1/10] 合并特征: TRAIN_AGET_PAY_features\n",
      "    特征表形状: (4400, 47)\n",
      "    新增特征数: 46\n",
      "    当前形状: (51397, 49)\n",
      "\n",
      "  [2/10] 合并特征: TRAIN_ASSET_features\n",
      "    特征表形状: (48417, 139)\n",
      "    新增特征数: 138\n",
      "    当前形状: (51397, 187)\n",
      "\n",
      "  [3/10] 合并特征: TRAIN_CCD_TR_DTL_features\n",
      "    特征表形状: (169, 48)\n",
      "    新增特征数: 47\n",
      "    当前形状: (51397, 234)\n",
      "\n",
      "  [4/10] 合并特征: TRAIN_MB_PAGEVIEW_DTL_features\n",
      "    特征表形状: (24754, 503)\n",
      "    新增特征数: 502\n",
      "    当前形状: (51397, 736)\n",
      "\n",
      "  [5/10] 合并特征: TRAIN_MB_TRNFLW_QRYTRNFLW_features\n",
      "    特征表形状: (30002, 239)\n",
      "    新增特征数: 502\n",
      "    当前形状: (51397, 736)\n",
      "\n",
      "  [5/10] 合并特征: TRAIN_MB_TRNFLW_QRYTRNFLW_features\n",
      "    特征表形状: (30002, 239)\n",
      "    新增特征数: 238\n",
      "    当前形状: (51397, 974)\n",
      "\n",
      "  [6/10] 合并特征: TRAIN_NATURE_features\n",
      "    特征表形状: (51397, 26)\n",
      "    新增特征数: 238\n",
      "    当前形状: (51397, 974)\n",
      "\n",
      "  [6/10] 合并特征: TRAIN_NATURE_features\n",
      "    特征表形状: (51397, 26)\n",
      "    新增特征数: 25\n",
      "    当前形状: (51397, 999)\n",
      "\n",
      "  [7/10] 合并特征: TRAIN_PROD_HOLD_features\n",
      "    特征表形状: (49448, 41)\n",
      "    新增特征数: 25\n",
      "    当前形状: (51397, 999)\n",
      "\n",
      "  [7/10] 合并特征: TRAIN_PROD_HOLD_features\n",
      "    特征表形状: (49448, 41)\n",
      "    新增特征数: 40\n",
      "    当前形状: (51397, 1039)\n",
      "\n",
      "  [8/10] 合并特征: TRAIN_TR_APS_DTL_features\n",
      "    特征表形状: (48608, 309)\n",
      "    新增特征数: 40\n",
      "    当前形状: (51397, 1039)\n",
      "\n",
      "  [8/10] 合并特征: TRAIN_TR_APS_DTL_features\n",
      "    特征表形状: (48608, 309)\n",
      "    新增特征数: 308\n",
      "    当前形状: (51397, 1347)\n",
      "\n",
      "  [9/10] 合并特征: TRAIN_TR_IBTF_features\n",
      "    特征表形状: (26375, 86)\n",
      "    新增特征数: 308\n",
      "    当前形状: (51397, 1347)\n",
      "\n",
      "  [9/10] 合并特征: TRAIN_TR_IBTF_features\n",
      "    特征表形状: (26375, 86)\n",
      "    新增特征数: 85\n",
      "    当前形状: (51397, 1432)\n",
      "\n",
      "  [10/10] 合并特征: TRAIN_TR_TPAY_features\n",
      "    特征表形状: (30926, 65)\n",
      "    新增特征数: 85\n",
      "    当前形状: (51397, 1432)\n",
      "\n",
      "  [10/10] 合并特征: TRAIN_TR_TPAY_features\n",
      "    特征表形状: (30926, 65)\n",
      "    新增特征数: 64\n",
      "    当前形状: (51397, 1496)\n",
      "\n",
      "训练集合并完成!\n",
      "最终形状: (51397, 1496)\n",
      "最终特征数: 1494\n",
      "\n",
      "====================================================================================================\n",
      "第2步: 合并测试集特征\n",
      "====================================================================================================\n",
      "\n",
      "正在合并测试集...\n",
      "----------------------------------------------------------------------------------------------------\n",
      "初始形状: (5975, 2)\n",
      "特征文件数量: 10\n",
      "\n",
      "  [1/10] 合并特征: A_AGET_PAY_features\n",
      "    特征表形状: (530, 47)\n",
      "    新增特征数: 46\n",
      "    当前形状: (5975, 48)\n",
      "\n",
      "  [2/10] 合并特征: A_ASSET_features\n",
      "    特征表形状: (5624, 139)\n",
      "    新增特征数: 138\n",
      "    当前形状: (5975, 186)\n",
      "\n",
      "  [3/10] 合并特征: A_CCD_TR_DTL_features\n",
      "    特征表形状: (18, 48)\n",
      "    新增特征数: 47\n",
      "    当前形状: (5975, 233)\n",
      "\n",
      "  [4/10] 合并特征: A_MB_PAGEVIEW_DTL_features\n",
      "    特征表形状: (2753, 503)\n",
      "    新增特征数: 502\n",
      "    当前形状: (5975, 735)\n",
      "\n",
      "  [5/10] 合并特征: A_MB_TRNFLW_QRYTRNFLW_features\n",
      "    特征表形状: (3128, 239)\n",
      "    新增特征数: 238\n",
      "    当前形状: (5975, 973)\n",
      "\n",
      "  [6/10] 合并特征: A_NATURE_features\n",
      "    特征表形状: (5975, 26)\n",
      "    新增特征数: 25\n",
      "    当前形状: (5975, 998)\n",
      "\n",
      "  [7/10] 合并特征: A_PROD_HOLD_features\n",
      "    特征表形状: (5741, 41)\n",
      "    新增特征数: 40\n",
      "    当前形状: (5975, 1038)\n",
      "\n",
      "  [8/10] 合并特征: A_TR_APS_DTL_features\n",
      "    特征表形状: (5616, 309)\n",
      "    新增特征数: 308\n",
      "    当前形状: (5975, 1346)\n",
      "\n",
      "  [9/10] 合并特征: A_TR_IBTF_features\n",
      "    特征表形状: (2981, 86)\n",
      "    新增特征数: 64\n",
      "    当前形状: (51397, 1496)\n",
      "\n",
      "训练集合并完成!\n",
      "最终形状: (51397, 1496)\n",
      "最终特征数: 1494\n",
      "\n",
      "====================================================================================================\n",
      "第2步: 合并测试集特征\n",
      "====================================================================================================\n",
      "\n",
      "正在合并测试集...\n",
      "----------------------------------------------------------------------------------------------------\n",
      "初始形状: (5975, 2)\n",
      "特征文件数量: 10\n",
      "\n",
      "  [1/10] 合并特征: A_AGET_PAY_features\n",
      "    特征表形状: (530, 47)\n",
      "    新增特征数: 46\n",
      "    当前形状: (5975, 48)\n",
      "\n",
      "  [2/10] 合并特征: A_ASSET_features\n",
      "    特征表形状: (5624, 139)\n",
      "    新增特征数: 138\n",
      "    当前形状: (5975, 186)\n",
      "\n",
      "  [3/10] 合并特征: A_CCD_TR_DTL_features\n",
      "    特征表形状: (18, 48)\n",
      "    新增特征数: 47\n",
      "    当前形状: (5975, 233)\n",
      "\n",
      "  [4/10] 合并特征: A_MB_PAGEVIEW_DTL_features\n",
      "    特征表形状: (2753, 503)\n",
      "    新增特征数: 502\n",
      "    当前形状: (5975, 735)\n",
      "\n",
      "  [5/10] 合并特征: A_MB_TRNFLW_QRYTRNFLW_features\n",
      "    特征表形状: (3128, 239)\n",
      "    新增特征数: 238\n",
      "    当前形状: (5975, 973)\n",
      "\n",
      "  [6/10] 合并特征: A_NATURE_features\n",
      "    特征表形状: (5975, 26)\n",
      "    新增特征数: 25\n",
      "    当前形状: (5975, 998)\n",
      "\n",
      "  [7/10] 合并特征: A_PROD_HOLD_features\n",
      "    特征表形状: (5741, 41)\n",
      "    新增特征数: 40\n",
      "    当前形状: (5975, 1038)\n",
      "\n",
      "  [8/10] 合并特征: A_TR_APS_DTL_features\n",
      "    特征表形状: (5616, 309)\n",
      "    新增特征数: 308\n",
      "    当前形状: (5975, 1346)\n",
      "\n",
      "  [9/10] 合并特征: A_TR_IBTF_features\n",
      "    特征表形状: (2981, 86)\n",
      "    新增特征数: 85\n",
      "    当前形状: (5975, 1431)\n",
      "\n",
      "  [10/10] 合并特征: A_TR_TPAY_features\n",
      "    特征表形状: (3595, 65)\n",
      "    新增特征数: 64\n",
      "    当前形状: (5975, 1495)\n",
      "\n",
      "测试集合并完成!\n",
      "最终形状: (5975, 1495)\n",
      "最终特征数: 1494\n",
      "\n",
      "====================================================================================================\n",
      "第3步: 检查训练集和测试集列一致性\n",
      "====================================================================================================\n",
      "\n",
      "列对比结果:\n",
      "  训练集总列数: 1496 (含CUST_NO和FLAG)\n",
      "  测试集总列数: 1495 (含CUST_NO)\n",
      "  共同特征列数: 1455\n",
      "\n",
      "  仅在训练集的列 (39个):\n",
      "    - module_6d748a11308d9e5cfb265d92df56f6e2_unique_pages\n",
      "    - active_months_dup_TRAIN_CCD_TR_DTL_features\n",
      "    - month_amt_min_dup_TRAIN_CCD_TR_DTL_features\n",
      "    - module_6d748a11308d9e5cfb265d92df56f6e2_count\n",
      "    - module_6d748a11308d9e5cfb265d92df56f6e2_last_visit\n",
      "    - page_cb9849b851be39ccd19b336550b5f20c_last_visit\n",
      "    - page_cb9849b851be39ccd19b336550b5f20c_visit_days\n",
      "    - page_14d5118976b7e53c1c2bdbbbb155dfe8_last_visit\n",
      "    - page_path_count_0e5c9561153e8b3fd936b94a5641c8e1_1f02209bfbd0fbd6e68330b02c75a2ee\n",
      "    - avg_month_count_dup_TRAIN_CCD_TR_DTL_features\n",
      "    ... 还有 29 个\n",
      "\n",
      "  仅在测试集的列 (39个):\n",
      "    - month_amt_cv_dup_A_CCD_TR_DTL_features\n",
      "    - page_be2de5e033a826ad66a90bab39dddc22_last_visit\n",
      "    - model_path_count_b989cf3952250c20ce3f5ce391638fbc_878ac3a435a9e30b63c6b4c8c1806171\n",
      "    - page_path_count_c5b386b7a6348a2f1ba70f2259fb827e_1f02209bfbd0fbd6e68330b02c75a2ee\n",
      "    - page_path_count_a3efea933884689e89b46cadd9aa989e_8d9046268f61d8dd1fc7b48e36677e1e\n",
      "    - page_464e4262d3173674b011f312fa50aa0d_last_visit\n",
      "    - module_1993162004f0f20fe0bcda9337e150b4_last_visit\n",
      "    - page_6aaf0b36ffc10b6e08130dfe69770d5d_count\n",
      "    - page_be2de5e033a826ad66a90bab39dddc22_count\n",
      "    - module_1993162004f0f20fe0bcda9337e150b4_count\n",
      "    ... 还有 29 个\n",
      "\n",
      "警告: 训练集和测试集存在不一致的列!\n",
      "建议: 删除不一致的列以确保模型训练和预测的一致性\n",
      "\n",
      "正在删除训练集中的不一致列...\n",
      "  已删除 39 列\n",
      "\n",
      "正在删除测试集中的不一致列...\n",
      "  已删除 39 列\n",
      "\n",
      "处理后:\n",
      "  训练集形状: (51397, 1457)\n",
      "  测试集形状: (5975, 1456)\n",
      "\n",
      "====================================================================================================\n",
      "所有特征合并完成!\n",
      "====================================================================================================\n",
      "\n",
      "最终结果:\n",
      "  训练集形状: (51397, 1457)\n",
      "  测试集形状: (5975, 1456)\n",
      "  训练集特征数: 1455  (不含CUST_NO和FLAG)\n",
      "  测试集特征数: 1455  (不含CUST_NO)\n",
      "    新增特征数: 85\n",
      "    当前形状: (5975, 1431)\n",
      "\n",
      "  [10/10] 合并特征: A_TR_TPAY_features\n",
      "    特征表形状: (3595, 65)\n",
      "    新增特征数: 64\n",
      "    当前形状: (5975, 1495)\n",
      "\n",
      "测试集合并完成!\n",
      "最终形状: (5975, 1495)\n",
      "最终特征数: 1494\n",
      "\n",
      "====================================================================================================\n",
      "第3步: 检查训练集和测试集列一致性\n",
      "====================================================================================================\n",
      "\n",
      "列对比结果:\n",
      "  训练集总列数: 1496 (含CUST_NO和FLAG)\n",
      "  测试集总列数: 1495 (含CUST_NO)\n",
      "  共同特征列数: 1455\n",
      "\n",
      "  仅在训练集的列 (39个):\n",
      "    - module_6d748a11308d9e5cfb265d92df56f6e2_unique_pages\n",
      "    - active_months_dup_TRAIN_CCD_TR_DTL_features\n",
      "    - month_amt_min_dup_TRAIN_CCD_TR_DTL_features\n",
      "    - module_6d748a11308d9e5cfb265d92df56f6e2_count\n",
      "    - module_6d748a11308d9e5cfb265d92df56f6e2_last_visit\n",
      "    - page_cb9849b851be39ccd19b336550b5f20c_last_visit\n",
      "    - page_cb9849b851be39ccd19b336550b5f20c_visit_days\n",
      "    - page_14d5118976b7e53c1c2bdbbbb155dfe8_last_visit\n",
      "    - page_path_count_0e5c9561153e8b3fd936b94a5641c8e1_1f02209bfbd0fbd6e68330b02c75a2ee\n",
      "    - avg_month_count_dup_TRAIN_CCD_TR_DTL_features\n",
      "    ... 还有 29 个\n",
      "\n",
      "  仅在测试集的列 (39个):\n",
      "    - month_amt_cv_dup_A_CCD_TR_DTL_features\n",
      "    - page_be2de5e033a826ad66a90bab39dddc22_last_visit\n",
      "    - model_path_count_b989cf3952250c20ce3f5ce391638fbc_878ac3a435a9e30b63c6b4c8c1806171\n",
      "    - page_path_count_c5b386b7a6348a2f1ba70f2259fb827e_1f02209bfbd0fbd6e68330b02c75a2ee\n",
      "    - page_path_count_a3efea933884689e89b46cadd9aa989e_8d9046268f61d8dd1fc7b48e36677e1e\n",
      "    - page_464e4262d3173674b011f312fa50aa0d_last_visit\n",
      "    - module_1993162004f0f20fe0bcda9337e150b4_last_visit\n",
      "    - page_6aaf0b36ffc10b6e08130dfe69770d5d_count\n",
      "    - page_be2de5e033a826ad66a90bab39dddc22_count\n",
      "    - module_1993162004f0f20fe0bcda9337e150b4_count\n",
      "    ... 还有 29 个\n",
      "\n",
      "警告: 训练集和测试集存在不一致的列!\n",
      "建议: 删除不一致的列以确保模型训练和预测的一致性\n",
      "\n",
      "正在删除训练集中的不一致列...\n",
      "  已删除 39 列\n",
      "\n",
      "正在删除测试集中的不一致列...\n",
      "  已删除 39 列\n",
      "\n",
      "处理后:\n",
      "  训练集形状: (51397, 1457)\n",
      "  测试集形状: (5975, 1456)\n",
      "\n",
      "====================================================================================================\n",
      "所有特征合并完成!\n",
      "====================================================================================================\n",
      "\n",
      "最终结果:\n",
      "  训练集形状: (51397, 1457)\n",
      "  测试集形状: (5975, 1456)\n",
      "  训练集特征数: 1455  (不含CUST_NO和FLAG)\n",
      "  测试集特征数: 1455  (不含CUST_NO)\n",
      "\n",
      "\n",
      "\n",
      "训练集质量检查...\n",
      "====================================================================================================\n",
      "\n",
      "1. 重复记录数: 0\n",
      "\n",
      "2. 缺失值统计:\n",
      "   有缺失的列数: 1429 / 1457\n",
      "   总缺失值数: 42540954\n",
      "   总缺失率: 56.81%\n",
      "\n",
      "   缺失最严重的前15列:\n",
      "     PROD_CARD_COUNT: 51397 (100.00%)\n",
      "     MB_IND: 51397 (100.00%)\n",
      "     TDPT_PAY_ALI_IND: 51397 (100.00%)\n",
      "     TDPT_PAY_WCHT_IND: 51397 (100.00%)\n",
      "     PROD_DEPOSIT_TYPE: 51397 (100.00%)\n",
      "     PROD_LOAN_TYPE: 51397 (100.00%)\n",
      "     EBNK_IND: 51397 (100.00%)\n",
      "     PROD_WEALTH_COUNT: 51397 (100.00%)\n",
      "     PROD_ECHANNEL_COUNT: 51397 (100.00%)\n",
      "     PROD_THIRDPAY_COUNT: 51397 (100.00%)\n",
      "     PROD_HAS_PAY: 51397 (100.00%)\n",
      "     PROD_VALUE_SCORE: 51397 (100.00%)\n",
      "     PROD_ECHANNEL_ACTIVE: 51397 (100.00%)\n",
      "     PROD_INVEST_ACTIVE: 51397 (100.00%)\n",
      "     PAY_IND: 51397 (100.00%)\n",
      "\n",
      "\n",
      "\n",
      "训练集质量检查...\n",
      "====================================================================================================\n",
      "\n",
      "1. 重复记录数: 0\n",
      "\n",
      "2. 缺失值统计:\n",
      "   有缺失的列数: 1429 / 1457\n",
      "   总缺失值数: 42540954\n",
      "   总缺失率: 56.81%\n",
      "\n",
      "   缺失最严重的前15列:\n",
      "     PROD_CARD_COUNT: 51397 (100.00%)\n",
      "     MB_IND: 51397 (100.00%)\n",
      "     TDPT_PAY_ALI_IND: 51397 (100.00%)\n",
      "     TDPT_PAY_WCHT_IND: 51397 (100.00%)\n",
      "     PROD_DEPOSIT_TYPE: 51397 (100.00%)\n",
      "     PROD_LOAN_TYPE: 51397 (100.00%)\n",
      "     EBNK_IND: 51397 (100.00%)\n",
      "     PROD_WEALTH_COUNT: 51397 (100.00%)\n",
      "     PROD_ECHANNEL_COUNT: 51397 (100.00%)\n",
      "     PROD_THIRDPAY_COUNT: 51397 (100.00%)\n",
      "     PROD_HAS_PAY: 51397 (100.00%)\n",
      "     PROD_VALUE_SCORE: 51397 (100.00%)\n",
      "     PROD_ECHANNEL_ACTIVE: 51397 (100.00%)\n",
      "     PROD_INVEST_ACTIVE: 51397 (100.00%)\n",
      "     PAY_IND: 51397 (100.00%)\n",
      "\n",
      "3. 常量列数: 44\n",
      "\n",
      "4. 数据类型分布:\n",
      "   float64: 1444\n",
      "   int64: 6\n",
      "   int32: 6\n",
      "   object: 1\n",
      "\n",
      "5. 目标变量分布 (FLAG):\n",
      "   类别 1:   1459 ( 2.84%)\n",
      "   类别 2:    309 ( 0.60%)\n",
      "   类别 3:   5586 (10.87%)\n",
      "   类别 4:  15303 (29.77%)\n",
      "   类别 5:   8193 (15.94%)\n",
      "   类别 6:  10261 (19.96%)\n",
      "   类别 7:   1276 ( 2.48%)\n",
      "   类别 8:   2498 ( 4.86%)\n",
      "   类别 9:   6476 (12.60%)\n",
      "   类别 10:     36 ( 0.07%)\n",
      "\n",
      "   类别不平衡比: 425.08:1 (最大类/最小类)\n",
      "   警告: 存在严重类别不平衡! 建议使用类别权重或采样策略\n",
      "====================================================================================================\n",
      "\n",
      "\n",
      "\n",
      "测试集质量检查...\n",
      "====================================================================================================\n",
      "\n",
      "1. 重复记录数: 0\n",
      "\n",
      "2. 缺失值统计:\n",
      "   有缺失的列数: 1430 / 1456\n",
      "   总缺失值数: 4612895\n",
      "   总缺失率: 53.02%\n",
      "\n",
      "   缺失最严重的前15列:\n",
      "     PAY_IND: 5975 (100.00%)\n",
      "     BOND_IND: 5975 (100.00%)\n",
      "     EBNK_IND: 5975 (100.00%)\n",
      "     PROD_ECHANNEL_COUNT: 5975 (100.00%)\n",
      "     MB_IND: 5975 (100.00%)\n",
      "     PROD_THIRDPAY_COUNT: 5975 (100.00%)\n",
      "     PROD_INVEST_ACTIVE: 5975 (100.00%)\n",
      "     PROD_ECHANNEL_ACTIVE: 5975 (100.00%)\n",
      "     PROD_VALUE_SCORE: 5975 (100.00%)\n",
      "     MS_IND: 5975 (100.00%)\n",
      "     METAL_IND: 5975 (100.00%)\n",
      "     INSUR_IND: 5975 (100.00%)\n",
      "     FUND_IND: 5975 (100.00%)\n",
      "     PROD_WEALTH_COUNT: 5975 (100.00%)\n",
      "     PROD_HAS_PAY: 5975 (100.00%)\n",
      "\n",
      "3. 常量列数: 46\n",
      "\n",
      "4. 数据类型分布:\n",
      "   float64: 1444\n",
      "   int32: 6\n",
      "   int64: 5\n",
      "   object: 1\n",
      "====================================================================================================\n",
      "\n",
      "3. 常量列数: 44\n",
      "\n",
      "4. 数据类型分布:\n",
      "   float64: 1444\n",
      "   int64: 6\n",
      "   int32: 6\n",
      "   object: 1\n",
      "\n",
      "5. 目标变量分布 (FLAG):\n",
      "   类别 1:   1459 ( 2.84%)\n",
      "   类别 2:    309 ( 0.60%)\n",
      "   类别 3:   5586 (10.87%)\n",
      "   类别 4:  15303 (29.77%)\n",
      "   类别 5:   8193 (15.94%)\n",
      "   类别 6:  10261 (19.96%)\n",
      "   类别 7:   1276 ( 2.48%)\n",
      "   类别 8:   2498 ( 4.86%)\n",
      "   类别 9:   6476 (12.60%)\n",
      "   类别 10:     36 ( 0.07%)\n",
      "\n",
      "   类别不平衡比: 425.08:1 (最大类/最小类)\n",
      "   警告: 存在严重类别不平衡! 建议使用类别权重或采样策略\n",
      "====================================================================================================\n",
      "\n",
      "\n",
      "\n",
      "测试集质量检查...\n",
      "====================================================================================================\n",
      "\n",
      "1. 重复记录数: 0\n",
      "\n",
      "2. 缺失值统计:\n",
      "   有缺失的列数: 1430 / 1456\n",
      "   总缺失值数: 4612895\n",
      "   总缺失率: 53.02%\n",
      "\n",
      "   缺失最严重的前15列:\n",
      "     PAY_IND: 5975 (100.00%)\n",
      "     BOND_IND: 5975 (100.00%)\n",
      "     EBNK_IND: 5975 (100.00%)\n",
      "     PROD_ECHANNEL_COUNT: 5975 (100.00%)\n",
      "     MB_IND: 5975 (100.00%)\n",
      "     PROD_THIRDPAY_COUNT: 5975 (100.00%)\n",
      "     PROD_INVEST_ACTIVE: 5975 (100.00%)\n",
      "     PROD_ECHANNEL_ACTIVE: 5975 (100.00%)\n",
      "     PROD_VALUE_SCORE: 5975 (100.00%)\n",
      "     MS_IND: 5975 (100.00%)\n",
      "     METAL_IND: 5975 (100.00%)\n",
      "     INSUR_IND: 5975 (100.00%)\n",
      "     FUND_IND: 5975 (100.00%)\n",
      "     PROD_WEALTH_COUNT: 5975 (100.00%)\n",
      "     PROD_HAS_PAY: 5975 (100.00%)\n",
      "\n",
      "3. 常量列数: 46\n",
      "\n",
      "4. 数据类型分布:\n",
      "   float64: 1444\n",
      "   int32: 6\n",
      "   int64: 5\n",
      "   object: 1\n",
      "====================================================================================================\n"
     ]
    }
   ],
   "source": [
    "class DataMerger:\n",
    "    \"\"\"\n",
    "    数据合并器 - 负责将所有特征表与目标表合并\n",
    "    支持训练集和测试集的独立处理（特征文件命名可以不同）\n",
    "    \"\"\"\n",
    "    \n",
    "    def __init__(self, train_features_dict, test_features_dict, train_target_df, test_target_df, key='CUST_NO'):\n",
    "        \"\"\"\n",
    "        初始化合并器\n",
    "        \n",
    "        参数:\n",
    "        - train_features_dict: 训练集特征字典（TRAIN_开头）\n",
    "        - test_features_dict: 测试集特征字典（A_开头）\n",
    "        - train_target_df: 训练集目标客户表\n",
    "        - test_target_df: 测试集目标客户表\n",
    "        - key: 主键列名\n",
    "        \"\"\"\n",
    "        self.train_features_dict = train_features_dict\n",
    "        self.test_features_dict = test_features_dict\n",
    "        self.train_target_df = train_target_df.copy()\n",
    "        self.test_target_df = test_target_df.copy()\n",
    "        self.key = key\n",
    "        self.train_merged = None\n",
    "        self.test_merged = None\n",
    "        \n",
    "    def merge_features_for_dataset(self, target_df, features_dict, dataset_name='数据集'):\n",
    "        \"\"\"\n",
    "        为单个数据集（训练集或测试集）合并所有特征\n",
    "        \n",
    "        参数:\n",
    "        - target_df: 目标客户表\n",
    "        - features_dict: 特征字典\n",
    "        - dataset_name: 数据集名称\n",
    "        \n",
    "        返回:\n",
    "        - merged_df: 合并后的数据\n",
    "        \"\"\"\n",
    "        print(f\"\\n正在合并{dataset_name}...\")\n",
    "        print(\"-\" * 100)\n",
    "        \n",
    "        merged_df = target_df.copy()\n",
    "        print(f\"初始形状: {merged_df.shape}\")\n",
    "        print(f\"特征文件数量: {len(features_dict)}\")\n",
    "        \n",
    "        # 逐个合并特征表\n",
    "        for idx, (feature_name, feature_df) in enumerate(sorted(features_dict.items()), 1):\n",
    "            print(f\"\\n  [{idx}/{len(features_dict)}] 合并特征: {feature_name}\")\n",
    "            print(f\"    特征表形状: {feature_df.shape}\")\n",
    "            \n",
    "            # 检查是否有主键\n",
    "            if self.key not in feature_df.columns:\n",
    "                print(f\"    警告: {feature_name} 缺少主键 {self.key}, 跳过\")\n",
    "                continue\n",
    "            \n",
    "            # 执行合并\n",
    "            before_cols = len(merged_df.columns)\n",
    "            \n",
    "            merged_df = merged_df.merge(\n",
    "                feature_df, \n",
    "                on=self.key, \n",
    "                how='left',\n",
    "                suffixes=('', f'_dup_{feature_name}')\n",
    "            )\n",
    "            \n",
    "            after_cols = len(merged_df.columns)\n",
    "            added_cols = after_cols - before_cols\n",
    "            \n",
    "            print(f\"    新增特征数: {added_cols}\")\n",
    "            print(f\"    当前形状: {merged_df.shape}\")\n",
    "            \n",
    "            # 检查是否有重复列\n",
    "            dup_cols = [col for col in merged_df.columns if col.startswith(f'_dup_{feature_name}')]\n",
    "            if dup_cols:\n",
    "                print(f\"    警告: 发现重复列 {dup_cols}, 已添加后缀\")\n",
    "        \n",
    "        print(f\"\\n{dataset_name}合并完成!\")\n",
    "        print(f\"最终形状: {merged_df.shape}\")\n",
    "        print(f\"最终特征数: {merged_df.shape[1] - 1 - ('FLAG' in merged_df.columns)}\")\n",
    "        \n",
    "        return merged_df\n",
    "    \n",
    "    def merge_all_features(self):\n",
    "        \"\"\"\n",
    "        分别合并训练集和测试集的所有特征\n",
    "        \n",
    "        返回:\n",
    "        - train_merged: 训练集合并后的完整数据\n",
    "        - test_merged: 测试集合并后的完整数据\n",
    "        \"\"\"\n",
    "        print(\"\\n开始合并所有特征...\")\n",
    "        print(\"=\"*100)\n",
    "        \n",
    "        # 1. 合并训练集\n",
    "        print(\"\\n\" + \"=\"*100)\n",
    "        print(\"第1步: 合并训练集特征\")\n",
    "        print(\"=\"*100)\n",
    "        self.train_merged = self.merge_features_for_dataset(\n",
    "            self.train_target_df, \n",
    "            self.train_features_dict, \n",
    "            '训练集'\n",
    "        )\n",
    "        \n",
    "        # 2. 合并测试集\n",
    "        print(\"\\n\" + \"=\"*100)\n",
    "        print(\"第2步: 合并测试集特征\")\n",
    "        print(\"=\"*100)\n",
    "        self.test_merged = self.merge_features_for_dataset(\n",
    "            self.test_target_df, \n",
    "            self.test_features_dict, \n",
    "            '测试集'\n",
    "        )\n",
    "        \n",
    "        # 3. 检查训练集和测试集的列一致性\n",
    "        print(\"\\n\" + \"=\"*100)\n",
    "        print(\"第3步: 检查训练集和测试集列一致性\")\n",
    "        print(\"=\"*100)\n",
    "        \n",
    "        train_cols = set(self.train_merged.columns) - {'FLAG'}  # 训练集有FLAG\n",
    "        test_cols = set(self.test_merged.columns)  # 测试集没有FLAG\n",
    "        \n",
    "        # 找出不一致的列\n",
    "        only_in_train = train_cols - test_cols - {self.key}\n",
    "        only_in_test = test_cols - train_cols - {self.key}\n",
    "        common_cols = (train_cols & test_cols) - {self.key}\n",
    "        \n",
    "        print(f\"\\n列对比结果:\")\n",
    "        print(f\"  训练集总列数: {len(self.train_merged.columns)} (含CUST_NO和FLAG)\")\n",
    "        print(f\"  测试集总列数: {len(self.test_merged.columns)} (含CUST_NO)\")\n",
    "        print(f\"  共同特征列数: {len(common_cols)}\")\n",
    "        \n",
    "        if only_in_train:\n",
    "            print(f\"\\n  仅在训练集的列 ({len(only_in_train)}个):\")\n",
    "            for col in list(only_in_train)[:10]:\n",
    "                print(f\"    - {col}\")\n",
    "            if len(only_in_train) > 10:\n",
    "                print(f\"    ... 还有 {len(only_in_train) - 10} 个\")\n",
    "        else:\n",
    "            print(f\"  仅在训练集的列: 无 ✓\")\n",
    "        \n",
    "        if only_in_test:\n",
    "            print(f\"\\n  仅在测试集的列 ({len(only_in_test)}个):\")\n",
    "            for col in list(only_in_test)[:10]:\n",
    "                print(f\"    - {col}\")\n",
    "            if len(only_in_test) > 10:\n",
    "                print(f\"    ... 还有 {len(only_in_test) - 10} 个\")\n",
    "        else:\n",
    "            print(f\"  仅在测试集的列: 无 ✓\")\n",
    "        \n",
    "        # 4. 处理不一致的列\n",
    "        if only_in_train or only_in_test:\n",
    "            print(f\"\\n警告: 训练集和测试集存在不一致的列!\")\n",
    "            print(f\"建议: 删除不一致的列以确保模型训练和预测的一致性\")\n",
    "            \n",
    "            # 自动删除不一致的列\n",
    "            if only_in_train:\n",
    "                print(f\"\\n正在删除训练集中的不一致列...\")\n",
    "                self.train_merged = self.train_merged.drop(columns=list(only_in_train))\n",
    "                print(f\"  已删除 {len(only_in_train)} 列\")\n",
    "            \n",
    "            if only_in_test:\n",
    "                print(f\"\\n正在删除测试集中的不一致列...\")\n",
    "                self.test_merged = self.test_merged.drop(columns=list(only_in_test))\n",
    "                print(f\"  已删除 {len(only_in_test)} 列\")\n",
    "            \n",
    "            print(f\"\\n处理后:\")\n",
    "            print(f\"  训练集形状: {self.train_merged.shape}\")\n",
    "            print(f\"  测试集形状: {self.test_merged.shape}\")\n",
    "        else:\n",
    "            print(f\"\\n列一致性检查通过 ✓\")\n",
    "        \n",
    "        print(\"\\n\" + \"=\"*100)\n",
    "        print(f\"所有特征合并完成!\")\n",
    "        print(\"=\"*100)\n",
    "        print(f\"\\n最终结果:\")\n",
    "        print(f\"  训练集形状: {self.train_merged.shape}\")\n",
    "        print(f\"  测试集形状: {self.test_merged.shape}\")\n",
    "        print(f\"  训练集特征数: {self.train_merged.shape[1] - 2}  (不含CUST_NO和FLAG)\")\n",
    "        print(f\"  测试集特征数: {self.test_merged.shape[1] - 1}  (不含CUST_NO)\")\n",
    "        \n",
    "        return self.train_merged, self.test_merged\n",
    "    \n",
    "    def check_data_quality(self, data, data_name='数据'):\n",
    "        \"\"\"\n",
    "        检查数据质量\n",
    "        \n",
    "        参数:\n",
    "        - data: 待检查的数据\n",
    "        - data_name: 数据名称\n",
    "        \n",
    "        返回:\n",
    "        - dict: 质量报告\n",
    "        \"\"\"\n",
    "        print(f\"\\n{data_name}质量检查...\")\n",
    "        print(\"=\"*100)\n",
    "        \n",
    "        # 1. 检查重复记录\n",
    "        duplicates = data.duplicated(subset=[self.key]).sum()\n",
    "        print(f\"\\n1. 重复记录数: {duplicates}\")\n",
    "        \n",
    "        # 2. 检查缺失值\n",
    "        missing_stats = data.isnull().sum().sort_values(ascending=False)\n",
    "        missing_cols = missing_stats[missing_stats > 0]\n",
    "        print(f\"\\n2. 缺失值统计:\")\n",
    "        print(f\"   有缺失的列数: {len(missing_cols)} / {len(data.columns)}\")\n",
    "        print(f\"   总缺失值数: {missing_stats.sum()}\")\n",
    "        print(f\"   总缺失率: {missing_stats.sum() / (data.shape[0] * data.shape[1]) * 100:.2f}%\")\n",
    "        \n",
    "        if len(missing_cols) > 0:\n",
    "            print(f\"\\n   缺失最严重的前15列:\")\n",
    "            for col, count in missing_cols.head(15).items():\n",
    "                rate = count / len(data) * 100\n",
    "                print(f\"     {col}: {count} ({rate:.2f}%)\")\n",
    "        \n",
    "        # 3. 检查常量列\n",
    "        constant_cols = []\n",
    "        for col in data.columns:\n",
    "            if col not in [self.key, 'FLAG']:\n",
    "                if data[col].nunique() <= 1:\n",
    "                    constant_cols.append(col)\n",
    "        print(f\"\\n3. 常量列数: {len(constant_cols)}\")\n",
    "        if len(constant_cols) > 0 and len(constant_cols) <= 20:\n",
    "            print(f\"   列名: {constant_cols}\")\n",
    "        \n",
    "        # 4. 数据类型统计\n",
    "        dtype_counts = data.dtypes.value_counts()\n",
    "        print(f\"\\n4. 数据类型分布:\")\n",
    "        for dtype, count in dtype_counts.items():\n",
    "            print(f\"   {dtype}: {count}\")\n",
    "        \n",
    "        # 5. 目标变量统计(仅训练集)\n",
    "        if 'FLAG' in data.columns:\n",
    "            flag_dist = data['FLAG'].value_counts().sort_index()\n",
    "            print(f\"\\n5. 目标变量分布 (FLAG):\")\n",
    "            total = len(data)\n",
    "            for flag, count in flag_dist.items():\n",
    "                rate = count / total * 100\n",
    "                print(f\"   类别 {flag}: {count:6d} ({rate:5.2f}%)\")\n",
    "            \n",
    "            # 检查类别不平衡程度\n",
    "            max_rate = flag_dist.max() / total * 100\n",
    "            min_rate = flag_dist.min() / total * 100\n",
    "            imbalance_ratio = flag_dist.max() / flag_dist.min()\n",
    "            print(f\"\\n   类别不平衡比: {imbalance_ratio:.2f}:1 (最大类/最小类)\")\n",
    "            if imbalance_ratio > 5:\n",
    "                print(f\"   警告: 存在严重类别不平衡! 建议使用类别权重或采样策略\")\n",
    "        \n",
    "        print(\"=\"*100)\n",
    "        \n",
    "        quality_report = {\n",
    "            'duplicates': duplicates,\n",
    "            'missing_cols': len(missing_cols),\n",
    "            'constant_cols': constant_cols,\n",
    "            'dtype_counts': dtype_counts.to_dict()\n",
    "        }\n",
    "        \n",
    "        return quality_report\n",
    "\n",
    "# 创建合并器并执行合并\n",
    "print(\"=\"*100)\n",
    "print(\"步骤1: 数据合并\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "merger = DataMerger(\n",
    "    train_features_dict=train_features_dict,\n",
    "    test_features_dict=test_features_dict,\n",
    "    train_target_df=train_target_cust,\n",
    "    test_target_df=test_target_cust\n",
    ")\n",
    "\n",
    "# 执行合并\n",
    "train_data, test_data = merger.merge_all_features()\n",
    "\n",
    "# 数据质量检查\n",
    "print(\"\\n\")\n",
    "train_quality = merger.check_data_quality(train_data, '训练集')\n",
    "print(\"\\n\")\n",
    "test_quality = merger.check_data_quality(test_data, '测试集')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a2df69c2",
   "metadata": {},
   "source": [
    "## 数据预处理与特征优化"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "f0970ecb",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "====================================================================================================\n",
      "步骤2: 数据预处理与特征优化\n",
      "====================================================================================================\n",
      "\n",
      "删除常量列...\n",
      "发现 44 个常量列\n",
      "已删除常量列\n",
      "\n",
      "删除缺失率>95.0%的列...\n",
      "发现 167 个高缺失率列\n",
      "已删除高缺失率列\n",
      "\n",
      "处理无穷值...\n",
      "未发现无穷值\n",
      "\n",
      "识别特征类型...\n",
      "类别型特征数: 10\n",
      "数值型特征数: 1234\n",
      "\n",
      "优化数据类型...\n",
      "训练集内存: 491.39MB -> 247.19MB (减少 49.7%)\n",
      "测试集内存: 57.08MB -> 28.69MB (减少 49.7%)\n",
      "\n",
      "预处理完成!\n",
      "训练集最终形状: (51397, 1246)\n",
      "测试集最终形状: (5975, 1245)\n",
      "删除的列数: 211\n",
      "\n",
      "====================================================================================================\n",
      "特征类型详情:\n",
      "====================================================================================================\n",
      "\n",
      "类别型特征 (10个):\n",
      "  1. NATURE_SEX_CD (唯一值: 2)\n",
      "  2. NATURE_RANK_CD (唯一值: 8)\n",
      "  3. NATURE_SEAN_ACTV_IND (唯一值: 2)\n",
      "  4. NATURE_AGE_GROUP (唯一值: 6)\n",
      "  5. NATURE_SEX_RANK_INTERACT (唯一值: 12)\n",
      "  6. NATURE_IS_YOUNG (唯一值: 2)\n",
      "  7. NATURE_IS_MIDDLE (唯一值: 2)\n",
      "  8. NATURE_IS_OLD (唯一值: 2)\n",
      "  9. NATURE_IS_HIGH_RANK (唯一值: 2)\n",
      "  10. NATURE_IS_LOW_RANK (唯一值: 2)\n",
      "\n",
      "数值型特征 (1234个):\n",
      "  1. aget_pay_count\n",
      "  2. aget_pay_unit_count\n",
      "  3. tr_amt_sum\n",
      "  4. tr_amt_mean\n",
      "  5. tr_amt_std\n",
      "  6. tr_amt_median\n",
      "  7. tr_amt_max\n",
      "  8. tr_amt_min\n",
      "  9. tr_amt_skew\n",
      "  10. tr_amt_transformed_sum\n",
      "  11. tr_amt_transformed_mean\n",
      "  12. tr_amt_transformed_std\n",
      "  13. prov_cd_mean\n",
      "  14. prov_cd_nunique\n",
      "  15. unit_typ_cd_mean\n",
      "  16. unit_typ_cd_nunique\n",
      "  17. tr_amt_range\n",
      "  18. tr_amt_cv\n",
      "  19. avg_amt_per_unit\n",
      "  20. aget_day_diff_max\n",
      "  ... 还有 1214 个数值型特征\n"
     ]
    }
   ],
   "source": [
    "class DataPreprocessor:\n",
    "    \"\"\"\n",
    "    数据预处理器\n",
    "    处理缺失值、常量列、数据类型等\n",
    "    \"\"\"\n",
    "    \n",
    "    def __init__(self, train_data, test_data, target_col='FLAG', id_col='CUST_NO'):\n",
    "        \"\"\"\n",
    "        初始化预处理器\n",
    "        \n",
    "        参数:\n",
    "        - train_data: 训练集\n",
    "        - test_data: 测试集\n",
    "        - target_col: 目标列名\n",
    "        - id_col: ID列名\n",
    "        \"\"\"\n",
    "        self.train_data = train_data.copy()\n",
    "        self.test_data = test_data.copy()\n",
    "        self.target_col = target_col\n",
    "        self.id_col = id_col\n",
    "        self.dropped_cols = []\n",
    "        self.feature_types = {}\n",
    "        \n",
    "    def remove_constant_columns(self):\n",
    "        \"\"\"\n",
    "        删除常量列(只有一个唯一值的列)\n",
    "        \"\"\"\n",
    "        print(\"\\n删除常量列...\")\n",
    "        constant_cols = []\n",
    "        \n",
    "        for col in self.train_data.columns:\n",
    "            if col not in [self.id_col, self.target_col]:\n",
    "                if self.train_data[col].nunique() <= 1:\n",
    "                    constant_cols.append(col)\n",
    "        \n",
    "        if len(constant_cols) > 0:\n",
    "            print(f\"发现 {len(constant_cols)} 个常量列\")\n",
    "            self.train_data = self.train_data.drop(columns=constant_cols)\n",
    "            self.test_data = self.test_data.drop(columns=constant_cols)\n",
    "            self.dropped_cols.extend(constant_cols)\n",
    "            print(f\"已删除常量列\")\n",
    "        else:\n",
    "            print(\"未发现常量列\")\n",
    "        \n",
    "        return constant_cols\n",
    "    \n",
    "    def remove_high_missing_columns(self, threshold=0.95):\n",
    "        \"\"\"\n",
    "        删除缺失率过高的列\n",
    "        \n",
    "        参数:\n",
    "        - threshold: 缺失率阈值(默认95%)\n",
    "        \"\"\"\n",
    "        print(f\"\\n删除缺失率>{threshold*100}%的列...\")\n",
    "        high_missing_cols = []\n",
    "        \n",
    "        for col in self.train_data.columns:\n",
    "            if col not in [self.id_col, self.target_col]:\n",
    "                missing_rate = self.train_data[col].isnull().sum() / len(self.train_data)\n",
    "                if missing_rate > threshold:\n",
    "                    high_missing_cols.append(col)\n",
    "        \n",
    "        if len(high_missing_cols) > 0:\n",
    "            print(f\"发现 {len(high_missing_cols)} 个高缺失率列\")\n",
    "            self.train_data = self.train_data.drop(columns=high_missing_cols)\n",
    "            self.test_data = self.test_data.drop(columns=high_missing_cols)\n",
    "            self.dropped_cols.extend(high_missing_cols)\n",
    "            print(f\"已删除高缺失率列\")\n",
    "        else:\n",
    "            print(\"未发现高缺失率列\")\n",
    "        \n",
    "        return high_missing_cols\n",
    "    \n",
    "    def handle_inf_values(self):\n",
    "        \"\"\"\n",
    "        处理无穷值\n",
    "        \"\"\"\n",
    "        print(\"\\n处理无穷值...\")\n",
    "        \n",
    "        numeric_cols = self.train_data.select_dtypes(include=[np.number]).columns\n",
    "        numeric_cols = [col for col in numeric_cols if col not in [self.id_col, self.target_col]]\n",
    "        \n",
    "        inf_count = 0\n",
    "        for col in numeric_cols:\n",
    "            # 训练集\n",
    "            train_inf_mask = np.isinf(self.train_data[col])\n",
    "            if train_inf_mask.any():\n",
    "                inf_count += train_inf_mask.sum()\n",
    "                self.train_data.loc[train_inf_mask, col] = np.nan\n",
    "            \n",
    "            # 测试集\n",
    "            test_inf_mask = np.isinf(self.test_data[col])\n",
    "            if test_inf_mask.any():\n",
    "                inf_count += test_inf_mask.sum()\n",
    "                self.test_data.loc[test_inf_mask, col] = np.nan\n",
    "        \n",
    "        if inf_count > 0:\n",
    "            print(f\"发现并处理 {inf_count} 个无穷值\")\n",
    "        else:\n",
    "            print(\"未发现无穷值\")\n",
    "    \n",
    "    def identify_feature_types(self):\n",
    "        \"\"\"\n",
    "        识别特征类型(数值型、类别型)\n",
    "        \"\"\"\n",
    "        print(\"\\n识别特征类型...\")\n",
    "        \n",
    "        feature_cols = [col for col in self.train_data.columns \n",
    "                       if col not in [self.id_col, self.target_col]]\n",
    "        \n",
    "        categorical_features = []\n",
    "        numerical_features = []\n",
    "        \n",
    "        for col in feature_cols:\n",
    "            # 判断是否为类别型特征\n",
    "            if self.train_data[col].dtype == 'object':\n",
    "                categorical_features.append(col)\n",
    "            elif self.train_data[col].dtype in ['int64', 'int32']:\n",
    "                # 整数型,判断唯一值数量\n",
    "                nunique = self.train_data[col].nunique()\n",
    "                if nunique <= 20:  # 唯一值少于20个认为是类别型\n",
    "                    categorical_features.append(col)\n",
    "                else:\n",
    "                    numerical_features.append(col)\n",
    "            else:\n",
    "                numerical_features.append(col)\n",
    "        \n",
    "        self.feature_types = {\n",
    "            'categorical': categorical_features,\n",
    "            'numerical': numerical_features\n",
    "        }\n",
    "        \n",
    "        print(f\"类别型特征数: {len(categorical_features)}\")\n",
    "        print(f\"数值型特征数: {len(numerical_features)}\")\n",
    "        \n",
    "        return self.feature_types\n",
    "    \n",
    "    def convert_data_types(self):\n",
    "        \"\"\"\n",
    "        转换数据类型以优化内存\n",
    "        \"\"\"\n",
    "        print(\"\\n优化数据类型...\")\n",
    "        \n",
    "        # 记录优化前的内存\n",
    "        train_mem_before = self.train_data.memory_usage(deep=True).sum() / 1024 / 1024\n",
    "        test_mem_before = self.test_data.memory_usage(deep=True).sum() / 1024 / 1024\n",
    "        \n",
    "        for col in self.train_data.columns:\n",
    "            if col in [self.id_col, self.target_col]:\n",
    "                continue\n",
    "            \n",
    "            col_type = self.train_data[col].dtype\n",
    "            \n",
    "            # 整数型优化\n",
    "            if col_type in ['int64', 'int32']:\n",
    "                c_min = self.train_data[col].min()\n",
    "                c_max = self.train_data[col].max()\n",
    "                \n",
    "                if c_min > np.iinfo(np.int8).min and c_max < np.iinfo(np.int8).max:\n",
    "                    self.train_data[col] = self.train_data[col].astype(np.int8)\n",
    "                    self.test_data[col] = self.test_data[col].astype(np.int8)\n",
    "                elif c_min > np.iinfo(np.int16).min and c_max < np.iinfo(np.int16).max:\n",
    "                    self.train_data[col] = self.train_data[col].astype(np.int16)\n",
    "                    self.test_data[col] = self.test_data[col].astype(np.int16)\n",
    "                elif c_min > np.iinfo(np.int32).min and c_max < np.iinfo(np.int32).max:\n",
    "                    self.train_data[col] = self.train_data[col].astype(np.int32)\n",
    "                    self.test_data[col] = self.test_data[col].astype(np.int32)\n",
    "            \n",
    "            # 浮点型优化\n",
    "            elif col_type in ['float64', 'float32']:\n",
    "                c_min = self.train_data[col].min()\n",
    "                c_max = self.train_data[col].max()\n",
    "                \n",
    "                if c_min > np.finfo(np.float32).min and c_max < np.finfo(np.float32).max:\n",
    "                    self.train_data[col] = self.train_data[col].astype(np.float32)\n",
    "                    self.test_data[col] = self.test_data[col].astype(np.float32)\n",
    "        \n",
    "        # 记录优化后的内存\n",
    "        train_mem_after = self.train_data.memory_usage(deep=True).sum() / 1024 / 1024\n",
    "        test_mem_after = self.test_data.memory_usage(deep=True).sum() / 1024 / 1024\n",
    "        \n",
    "        print(f\"训练集内存: {train_mem_before:.2f}MB -> {train_mem_after:.2f}MB \"\n",
    "              f\"(减少 {(train_mem_before - train_mem_after) / train_mem_before * 100:.1f}%)\")\n",
    "        print(f\"测试集内存: {test_mem_before:.2f}MB -> {test_mem_after:.2f}MB \"\n",
    "              f\"(减少 {(test_mem_before - test_mem_after) / test_mem_before * 100:.1f}%)\")\n",
    "    \n",
    "    def process(self, remove_constant=True, remove_high_missing=True, \n",
    "                missing_threshold=0.95, handle_inf=True, optimize_dtype=True):\n",
    "        \"\"\"\n",
    "        执行完整的预处理流程\n",
    "        \n",
    "        参数:\n",
    "        - remove_constant: 是否删除常量列\n",
    "        - remove_high_missing: 是否删除高缺失率列\n",
    "        - missing_threshold: 缺失率阈值\n",
    "        - handle_inf: 是否处理无穷值\n",
    "        - optimize_dtype: 是否优化数据类型\n",
    "        \n",
    "        返回:\n",
    "        - train_data: 处理后的训练集\n",
    "        - test_data: 处理后的测试集\n",
    "        - feature_types: 特征类型字典\n",
    "        \"\"\"\n",
    "        print(\"=\"*100)\n",
    "        print(\"步骤2: 数据预处理与特征优化\")\n",
    "        print(\"=\"*100)\n",
    "        \n",
    "        if remove_constant:\n",
    "            self.remove_constant_columns()\n",
    "        \n",
    "        if remove_high_missing:\n",
    "            self.remove_high_missing_columns(threshold=missing_threshold)\n",
    "        \n",
    "        if handle_inf:\n",
    "            self.handle_inf_values()\n",
    "        \n",
    "        self.identify_feature_types()\n",
    "        \n",
    "        if optimize_dtype:\n",
    "            self.convert_data_types()\n",
    "        \n",
    "        print(f\"\\n预处理完成!\")\n",
    "        print(f\"训练集最终形状: {self.train_data.shape}\")\n",
    "        print(f\"测试集最终形状: {self.test_data.shape}\")\n",
    "        print(f\"删除的列数: {len(self.dropped_cols)}\")\n",
    "        \n",
    "        return self.train_data, self.test_data, self.feature_types\n",
    "\n",
    "# 执行预处理\n",
    "preprocessor = DataPreprocessor(train_data, test_data)\n",
    "train_data_processed, test_data_processed, feature_types = preprocessor.process()\n",
    "\n",
    "# 显示特征类型信息\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"特征类型详情:\")\n",
    "print(\"=\"*100)\n",
    "print(f\"\\n类别型特征 ({len(feature_types['categorical'])}个):\")\n",
    "if len(feature_types['categorical']) > 0:\n",
    "    for i, col in enumerate(feature_types['categorical'][:20], 1):\n",
    "        nunique_train = train_data_processed[col].nunique()\n",
    "        print(f\"  {i}. {col} (唯一值: {nunique_train})\")\n",
    "    if len(feature_types['categorical']) > 20:\n",
    "        print(f\"  ... 还有 {len(feature_types['categorical']) - 20} 个类别型特征\")\n",
    "\n",
    "print(f\"\\n数值型特征 ({len(feature_types['numerical'])}个):\")\n",
    "if len(feature_types['numerical']) > 0:\n",
    "    for i, col in enumerate(feature_types['numerical'][:20], 1):\n",
    "        print(f\"  {i}. {col}\")\n",
    "    if len(feature_types['numerical']) > 20:\n",
    "        print(f\"  ... 还有 {len(feature_types['numerical']) - 20} 个数值型特征\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4fa5edc7",
   "metadata": {},
   "source": [
    "## 自定义Macro-F1评分函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "793473f4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "自定义Macro-F1评分器已创建\n",
      "评分器名称: macro_f1\n",
      "最优值: 1.0\n",
      "越大越好: True\n"
     ]
    }
   ],
   "source": [
    "from sklearn.metrics import f1_score\n",
    "\n",
    "def macro_f1_score(y_true, y_pred):\n",
    "    \"\"\"\n",
    "    计算Macro-F1分数\n",
    "    \n",
    "    参数:\n",
    "    - y_true: 真实标签\n",
    "    - y_pred: 预测标签\n",
    "    \n",
    "    返回:\n",
    "    - macro_f1: Macro-F1分数\n",
    "    \"\"\"\n",
    "    return f1_score(y_true, y_pred, average='macro')\n",
    "\n",
    "# 为Autogluon创建自定义评分器\n",
    "macro_f1_scorer = make_scorer(\n",
    "    name='macro_f1',\n",
    "    score_func=macro_f1_score,\n",
    "    optimum=1.0,\n",
    "    greater_is_better=True,\n",
    "    needs_proba=False,\n",
    "    needs_threshold=False\n",
    ")\n",
    "\n",
    "print(\"自定义Macro-F1评分器已创建\")\n",
    "print(f\"评分器名称: {macro_f1_scorer.name}\")\n",
    "print(f\"最优值: {macro_f1_scorer.optimum}\")\n",
    "print(f\"越大越好: {macro_f1_scorer.greater_is_better}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fc0e390a",
   "metadata": {},
   "source": [
    "## 准备训练数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "429f0a47",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "====================================================================================================\n",
      "步骤3: 准备训练数据\n",
      "====================================================================================================\n",
      "\n",
      "训练集特征形状: (51397, 1244)\n",
      "训练集标签形状: (51397,)\n",
      "测试集特征形状: (5975, 1244)\n",
      "\n",
      "训练集标签分布:\n",
      "  类别 1:   1459 ( 2.84%)\n",
      "  类别 2:    309 ( 0.60%)\n",
      "  类别 3:   5586 (10.87%)\n",
      "  类别 4:  15303 (29.77%)\n",
      "  类别 5:   8193 (15.94%)\n",
      "  类别 6:  10261 (19.96%)\n",
      "  类别 7:   1276 ( 2.48%)\n",
      "  类别 8:   2498 ( 4.86%)\n",
      "  类别 9:   6476 (12.60%)\n",
      "  类别 10:     36 ( 0.07%)\n",
      "\n",
      "类别权重 (用于处理不平衡):\n",
      "  类别 1: 3.5228\n",
      "  类别 2: 16.6333\n",
      "  类别 3: 0.9201\n",
      "  类别 4: 0.3359\n",
      "  类别 5: 0.6273\n",
      "  类别 6: 0.5009\n",
      "  类别 7: 4.0280\n",
      "  类别 8: 2.0575\n",
      "  类别 9: 0.7937\n",
      "  类别 10: 142.7694\n",
      "\n",
      "转换为Autogluon TabularDataset格式...\n",
      "训练数据已准备完成!\n",
      "  TabularDataset形状: (51397, 1245)\n",
      "  特征列数: 1244\n",
      "  标签列名: FLAG\n"
     ]
    }
   ],
   "source": [
    "print(\"=\"*100)\n",
    "print(\"步骤3: 准备训练数据\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 准备训练数据\n",
    "train_df = train_data_processed.copy()\n",
    "test_df = test_data_processed.copy()\n",
    "\n",
    "# 分离特征和标签\n",
    "X_train = train_df.drop(columns=['CUST_NO', 'FLAG'])\n",
    "y_train = train_df['FLAG']\n",
    "X_test = test_df.drop(columns=['CUST_NO'])\n",
    "test_cust_no = test_df['CUST_NO']\n",
    "\n",
    "print(f\"\\n训练集特征形状: {X_train.shape}\")\n",
    "print(f\"训练集标签形状: {y_train.shape}\")\n",
    "print(f\"测试集特征形状: {X_test.shape}\")\n",
    "\n",
    "# 检查标签分布\n",
    "print(f\"\\n训练集标签分布:\")\n",
    "label_dist = y_train.value_counts().sort_index()\n",
    "for label, count in label_dist.items():\n",
    "    rate = count / len(y_train) * 100\n",
    "    print(f\"  类别 {label}: {count:6d} ({rate:5.2f}%)\")\n",
    "\n",
    "# 计算类别权重(用于处理不平衡)\n",
    "class_weights = {}\n",
    "total = len(y_train)\n",
    "n_classes = len(label_dist)\n",
    "for label, count in label_dist.items():\n",
    "    class_weights[label] = total / (n_classes * count)\n",
    "\n",
    "print(f\"\\n类别权重 (用于处理不平衡):\")\n",
    "for label, weight in sorted(class_weights.items()):\n",
    "    print(f\"  类别 {label}: {weight:.4f}\")\n",
    "\n",
    "# 转换为TabularDataset格式\n",
    "print(f\"\\n转换为Autogluon TabularDataset格式...\")\n",
    "train_data_ag = TabularDataset(pd.concat([X_train, y_train], axis=1))\n",
    "test_data_ag = TabularDataset(X_test)\n",
    "\n",
    "print(f\"训练数据已准备完成!\")\n",
    "print(f\"  TabularDataset形状: {train_data_ag.shape}\")\n",
    "print(f\"  特征列数: {len(X_train.columns)}\")\n",
    "print(f\"  标签列名: FLAG\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4c709572",
   "metadata": {},
   "source": [
    "## Autogluon模型训练 - 初级版本(快速验证)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "30dffd1f",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning: path already exists! This predictor may overwrite an existing predictor! path=\"./model/autogluon_quick\"\n",
      "Verbosity: 3 (Detailed Logging)\n",
      "=================== System Info ===================\n",
      "AutoGluon Version:  1.3.1\n",
      "Python Version:     3.10.18\n",
      "Operating System:   Windows\n",
      "Platform Machine:   AMD64\n",
      "Platform Version:   10.0.26100\n",
      "CPU Count:          32\n",
      "GPU Count:          0\n",
      "Memory Avail:       105.29 GB / 127.82 GB (82.4%)\n",
      "Disk Space Avail:   1329.12 GB / 3815.38 GB (34.8%)\n",
      "===================================================\n",
      "Presets specified: ['medium_quality']\n",
      "============ fit kwarg info ============\n",
      "User Specified kwargs:\n",
      "{'auto_stack': False,\n",
      " 'num_bag_folds': 5,\n",
      " 'num_bag_sets': 1,\n",
      " 'num_stack_levels': 0}\n",
      "Full kwargs:\n",
      "{'_feature_generator_kwargs': None,\n",
      " '_save_bag_folds': None,\n",
      " 'ag_args': None,\n",
      " 'ag_args_ensemble': None,\n",
      " 'ag_args_fit': None,\n",
      " 'auto_stack': False,\n",
      " 'calibrate': 'auto',\n",
      " 'delay_bag_sets': False,\n",
      " 'ds_args': {'clean_up_fits': True,\n",
      "             'detection_time_frac': 0.25,\n",
      "             'enable_callbacks': False,\n",
      "             'enable_ray_logging': True,\n",
      "             'holdout_data': None,\n",
      "             'holdout_frac': 0.1111111111111111,\n",
      "             'memory_safe_fits': True,\n",
      "             'n_folds': 2,\n",
      "             'n_repeats': 1,\n",
      "             'validation_procedure': 'holdout'},\n",
      " 'excluded_model_types': None,\n",
      " 'feature_generator': 'auto',\n",
      " 'feature_prune_kwargs': None,\n",
      " 'holdout_frac': None,\n",
      " 'hyperparameter_tune_kwargs': None,\n",
      " 'included_model_types': None,\n",
      " 'keep_only_best': False,\n",
      " 'learning_curves': False,\n",
      " 'name_suffix': None,\n",
      " 'num_bag_folds': 5,\n",
      " 'num_bag_sets': 1,\n",
      " 'num_stack_levels': 0,\n",
      " 'pseudo_data': None,\n",
      " 'raise_on_model_failure': False,\n",
      " 'raise_on_no_models_fitted': True,\n",
      " 'refit_full': False,\n",
      " 'save_bag_folds': None,\n",
      " 'save_space': False,\n",
      " 'set_best_to_refit_full': False,\n",
      " 'test_data': None,\n",
      " 'unlabeled_data': None,\n",
      " 'use_bag_holdout': False,\n",
      " 'verbosity': 3}\n",
      "========================================\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\learner.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\predictor.pkl\n",
      "Beginning AutoGluon training ... Time limit = 900s\n",
      "AutoGluon will save models to \"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\"\n",
      "Train Data Rows:    51397\n",
      "Train Data Columns: 1244\n",
      "Label Column:       FLAG\n",
      "Problem Type:       multiclass\n",
      "Preprocessing data ...\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "====================================================================================================\n",
      "步骤4: Autogluon模型训练 - 初级版本\n",
      "====================================================================================================\n",
      "\n",
      "模型输出目录: ./model/autogluon_quick\n",
      "开始训练初级版本模型(快速验证)...\n",
      "预计训练时间: 10-15分钟\n",
      "\n",
      "====================================================================================================\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Train Data Class Count: 10\n",
      "Using Feature Generators to preprocess the data ...\n",
      "Fitting AutoMLPipelineFeatureGenerator...\n",
      "\tAvailable Memory:                    107794.75 MB\n",
      "\tTrain Data (Original)  Memory Usage: 242.43 MB (0.2% of available memory)\n",
      "\tInferring data type of each feature based on column values. Set feature_metadata_in to manually specify special dtypes of the features.\n",
      "\tStage 1 Generators:\n",
      "\t\tFitting AsTypeFeatureGenerator...\n",
      "\t\t\tNote: Converting 9 features to boolean dtype as they only contain 2 unique values.\n",
      "\t\t\tOriginal Features (exact raw dtype, raw dtype):\n",
      "\t\t\t\t('float32', 'float') : 1234 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int8', 'int')      :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', []) : 1234 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])   :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.3s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 2 Generators:\n",
      "\t\tFitting FillNaFeatureGenerator...\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.1s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 3 Generators:\n",
      "\t\tFitting IdentityFeatureGenerator...\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.1s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\t\tSkipping CategoryFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping DatetimeFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping TextSpecialFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping TextNgramFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping IdentityFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping IsNanFeatureGenerator: No input feature with required dtypes.\n",
      "\tStage 4 Generators:\n",
      "\t\tFitting DropUniqueFeatureGenerator...\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.6s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 5 Generators:\n",
      "\t\tFitting DropDuplicatesFeatureGenerator...\n",
      "\t\t\t35 duplicate columns removed: ['AST_AUM_BAL_MAX', 'daily_unique_pages_mean', 'daily_visits_mean', 'daily_unique_pages_max', 'daily_visits_max', 'daily_visits_min', 'daily_unique_pages_std', 'daily_visits_std', 'total_page_visits', 'total_model_visits', 'total_visit_count', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', 'visit_days_min', 'first_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'last_visit_days', 'mb_trnflw_top8_transcode_amount_mean', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_last_month_amt', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t\t\t5.1s = Fit runtime\n",
      "\t\t\t1209 features in original data used to generate 1209 features in processed data.\n",
      "\tUnused Original Features (Count: 35): ['AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', 'total_visit_count', 'visit_days_min', 'daily_visits_mean', 'daily_visits_max', 'daily_visits_min', 'daily_visits_std', 'first_visit_days', 'last_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'daily_unique_pages_mean', 'daily_unique_pages_max', 'daily_unique_pages_std', 'mb_trnflw_top8_transcode_amount_mean', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'aps_last_month_amt', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "\t\tThese features were not used to generate any of the output features. Add a feature generator compatible with these features to utilize them.\n",
      "\t\tFeatures can also be unused if they carry very little information, such as being categorical but having almost entirely unique values or being duplicates of other features.\n",
      "\t\tThese features do not need to be present at inference time.\n",
      "\t\t('float', []) : 35 | ['AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', ...]\n",
      "\tTypes of features in original data (exact raw dtype, raw dtype):\n",
      "\t\t('float32', 'float') : 1199 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int8', 'int')      :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t('float', []) : 1199 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int', [])   :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in processed data (exact raw dtype, raw dtype):\n",
      "\t\t('float32', 'float') : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int8', 'int')      :   11 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t7.4s = Fit runtime\n",
      "\t1209 features in original data used to generate 1209 features in processed data.\n",
      "\tTrain Data (Processed) Memory Usage: 235.42 MB (0.2% of available memory)\n",
      "Data preprocessing and feature engineering runtime = 7.76s ...\n",
      "AutoGluon will gauge predictive performance using evaluation metric: 'macro_f1'\n",
      "\tTo change this, specify the eval_metric parameter of Predictor()\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\learner.pkl\n",
      "User-specified model hyperparameters to be fit:\n",
      "{\n",
      "\t'GBM': [{'num_boost_round': 100, 'learning_rate': 0.1}, {'num_boost_round': 200, 'learning_rate': 0.05}],\n",
      "\t'CAT': [{'iterations': 100, 'learning_rate': 0.1}, {'iterations': 200, 'learning_rate': 0.05}],\n",
      "\t'XGB': [{'n_estimators': 100, 'learning_rate': 0.1}, {'n_estimators': 200, 'learning_rate': 0.05}],\n",
      "\t'RF': [{'n_estimators': 100}],\n",
      "}\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\utils\\data\\X.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\utils\\data\\y.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tLightGBM_BAG_L1: \t{'num_boost_round': 100, 'learning_rate': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}}\n",
      "\tLightGBM_2_BAG_L1: \t{'num_boost_round': 200, 'learning_rate': 0.05, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}}\n",
      "\tRandomForest_BAG_L1: \t{'n_estimators': 100, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L1: \t{'iterations': 100, 'learning_rate': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}}\n",
      "\tCatBoost_2_BAG_L1: \t{'iterations': 200, 'learning_rate': 0.05, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}}\n",
      "\tXGBoost_BAG_L1: \t{'n_estimators': 100, 'learning_rate': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}}\n",
      "\tXGBoost_2_BAG_L1: \t{'n_estimators': 200, 'learning_rate': 0.05, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}}\n",
      "Fitting 7 L1 models, fit_strategy=\"sequential\" ...\n",
      "Fitting model: LightGBM_BAG_L1 ... Training model for up to 892.24s of the 892.24s of remaining time.\n",
      "\tFitting LightGBM_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_BAG_L1\\utils\\model_template.pkl\n",
      "Will use sequential fold fitting strategy because import of ray failed. Reason: ray is required to train folds in parallel for TabularPredictor or HPO for MultiModalPredictor. A quick tip is to install via `pip install \"ray>=2.10.0,<2.45.0\"`\n",
      "\tFitting 5 child models (S1F1 - S1F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 100 rounds... Hyperparameters: {'learning_rate': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.852633\tvalid_set's macro_f1: 0.587581\n",
      "[100]\tvalid_set's multi_logloss: 1.24515\tvalid_set's macro_f1: 0.572876\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 100 rounds... Hyperparameters: {'learning_rate': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.887961\tvalid_set's macro_f1: 0.579881\n",
      "[100]\tvalid_set's multi_logloss: 3.60528\tvalid_set's macro_f1: 0.528709\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 100 rounds... Hyperparameters: {'learning_rate': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.859482\tvalid_set's macro_f1: 0.57752\n",
      "[100]\tvalid_set's multi_logloss: 2.01113\tvalid_set's macro_f1: 0.543613\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 100 rounds... Hyperparameters: {'learning_rate': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.720649\tvalid_set's macro_f1: 0.596243\n",
      "[100]\tvalid_set's multi_logloss: 0.729633\tvalid_set's macro_f1: 0.594632\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 100 rounds... Hyperparameters: {'learning_rate': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.720555\tvalid_set's macro_f1: 0.592254\n",
      "[100]\tvalid_set's multi_logloss: 0.728276\tvalid_set's macro_f1: 0.593332\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_BAG_L1\\model.pkl\n",
      "\t0.5916\t = Validation score   (macro_f1)\n",
      "\t94.41s\t = Training   runtime\n",
      "\t0.26s\t = Validation runtime\n",
      "\t39659.2\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_2_BAG_L1 ... Training model for up to 795.94s of the 795.93s of remaining time.\n",
      "\tFitting LightGBM_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 5 child models (S1F1 - S1F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 200 rounds... Hyperparameters: {'learning_rate': 0.05}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.758404\tvalid_set's macro_f1: 0.586021\n",
      "[100]\tvalid_set's multi_logloss: 0.734137\tvalid_set's macro_f1: 0.58873\n",
      "[150]\tvalid_set's multi_logloss: 0.740369\tvalid_set's macro_f1: 0.587752\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 200 rounds... Hyperparameters: {'learning_rate': 0.05}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.741871\tvalid_set's macro_f1: 0.595556\n",
      "[100]\tvalid_set's multi_logloss: 0.715287\tvalid_set's macro_f1: 0.598941\n",
      "[150]\tvalid_set's multi_logloss: 0.718606\tvalid_set's macro_f1: 0.601286\n",
      "[200]\tvalid_set's multi_logloss: 0.725521\tvalid_set's macro_f1: 0.600948\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 200 rounds... Hyperparameters: {'learning_rate': 0.05}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.730635\tvalid_set's macro_f1: 0.586936\n",
      "[100]\tvalid_set's multi_logloss: 0.703986\tvalid_set's macro_f1: 0.584846\n",
      "[150]\tvalid_set's multi_logloss: 0.705624\tvalid_set's macro_f1: 0.58869\n",
      "[200]\tvalid_set's multi_logloss: 0.713578\tvalid_set's macro_f1: 0.590632\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 200 rounds... Hyperparameters: {'learning_rate': 0.05}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.735313\tvalid_set's macro_f1: 0.589112\n",
      "[100]\tvalid_set's multi_logloss: 0.708313\tvalid_set's macro_f1: 0.594267\n",
      "[150]\tvalid_set's multi_logloss: 0.710134\tvalid_set's macro_f1: 0.592643\n",
      "[200]\tvalid_set's multi_logloss: 0.716986\tvalid_set's macro_f1: 0.593709\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 200 rounds... Hyperparameters: {'learning_rate': 0.05}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.731815\tvalid_set's macro_f1: 0.597129\n",
      "[100]\tvalid_set's multi_logloss: 0.703631\tvalid_set's macro_f1: 0.603852\n",
      "[100]\tvalid_set's multi_logloss: 0.703631\tvalid_set's macro_f1: 0.603852\n",
      "[150]\tvalid_set's multi_logloss: 0.705146\tvalid_set's macro_f1: 0.603082\n",
      "[150]\tvalid_set's multi_logloss: 0.705146\tvalid_set's macro_f1: 0.603082\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "\t0.5973\t = Validation score   (macro_f1)\n",
      "\t174.14s\t = Training   runtime\n",
      "\t0.37s\t = Validation runtime\n",
      "\t28009.1\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "\t0.5973\t = Validation score   (macro_f1)\n",
      "\t174.14s\t = Training   runtime\n",
      "\t0.37s\t = Validation runtime\n",
      "\t28009.1\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_BAG_L1 ... Training model for up to 619.30s of the 619.30s of remaining time.\n",
      "Fitting model: RandomForest_BAG_L1 ... Training model for up to 619.30s of the 619.30s of remaining time.\n",
      "\tFitting RandomForest_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "\t3.65s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "\t3.65s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\RandomForest_BAG_L1\\model.pkl\n",
      "\t0.5549\t = Validation score   (macro_f1)\n",
      "\t5.02s\t = Training   runtime\n",
      "\t6.66s\t = Validation runtime\n",
      "\t7719.6\t = Inference  throughput (rows/s | 51397 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\RandomForest_BAG_L1\\model.pkl\n",
      "\t0.5549\t = Validation score   (macro_f1)\n",
      "\t5.02s\t = Training   runtime\n",
      "\t6.66s\t = Validation runtime\n",
      "\t7719.6\t = Inference  throughput (rows/s | 51397 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_BAG_L1 ... Training model for up to 606.77s of the 606.77s of remaining time.\n",
      "Fitting model: CatBoost_BAG_L1 ... Training model for up to 606.77s of the 606.77s of remaining time.\n",
      "\tFitting CatBoost_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting CatBoost_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 5 child models (S1F1 - S1F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 5 child models (S1F1 - S1F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 100, 'learning_rate': 0.1, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 100, 'learning_rate': 0.1, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 1.9653833\ttest: 1.9696089\tbest: 1.9696089 (0)\ttotal: 513ms\tremaining: 50.8s\n",
      "20:\tlearn: 0.9407769\ttest: 0.9648098\tbest: 0.9648098 (20)\ttotal: 7.89s\tremaining: 29.7s\n",
      "20:\tlearn: 0.9407769\ttest: 0.9648098\tbest: 0.9648098 (20)\ttotal: 7.89s\tremaining: 29.7s\n",
      "40:\tlearn: 0.8294985\ttest: 0.8635084\tbest: 0.8635084 (40)\ttotal: 15.3s\tremaining: 22s\n",
      "40:\tlearn: 0.8294985\ttest: 0.8635084\tbest: 0.8635084 (40)\ttotal: 15.3s\tremaining: 22s\n",
      "60:\tlearn: 0.7909077\ttest: 0.8323726\tbest: 0.8323726 (60)\ttotal: 22.5s\tremaining: 14.4s\n",
      "60:\tlearn: 0.7909077\ttest: 0.8323726\tbest: 0.8323726 (60)\ttotal: 22.5s\tremaining: 14.4s\n",
      "80:\tlearn: 0.7688888\ttest: 0.8164780\tbest: 0.8164780 (80)\ttotal: 29.6s\tremaining: 6.94s\n",
      "80:\tlearn: 0.7688888\ttest: 0.8164780\tbest: 0.8164780 (80)\ttotal: 29.6s\tremaining: 6.94s\n",
      "99:\tlearn: 0.7528530\ttest: 0.8065786\tbest: 0.8065786 (99)\ttotal: 36.4s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.8065786063\n",
      "bestIteration = 99\n",
      "\n",
      "99:\tlearn: 0.7528530\ttest: 0.8065786\tbest: 0.8065786 (99)\ttotal: 36.4s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.8065786063\n",
      "bestIteration = 99\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 100, 'learning_rate': 0.1, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 100, 'learning_rate': 0.1, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 1.9677141\ttest: 1.9690753\tbest: 1.9690753 (0)\ttotal: 367ms\tremaining: 36.4s\n",
      "20:\tlearn: 0.9439567\ttest: 0.9560541\tbest: 0.9560541 (20)\ttotal: 7.38s\tremaining: 27.8s\n",
      "20:\tlearn: 0.9439567\ttest: 0.9560541\tbest: 0.9560541 (20)\ttotal: 7.38s\tremaining: 27.8s\n",
      "40:\tlearn: 0.8320622\ttest: 0.8481360\tbest: 0.8481360 (40)\ttotal: 14.4s\tremaining: 20.8s\n",
      "40:\tlearn: 0.8320622\ttest: 0.8481360\tbest: 0.8481360 (40)\ttotal: 14.4s\tremaining: 20.8s\n",
      "60:\tlearn: 0.7968540\ttest: 0.8180813\tbest: 0.8180813 (60)\ttotal: 21.6s\tremaining: 13.8s\n",
      "60:\tlearn: 0.7968540\ttest: 0.8180813\tbest: 0.8180813 (60)\ttotal: 21.6s\tremaining: 13.8s\n",
      "80:\tlearn: 0.7762440\ttest: 0.8021563\tbest: 0.8021563 (80)\ttotal: 28.8s\tremaining: 6.76s\n",
      "80:\tlearn: 0.7762440\ttest: 0.8021563\tbest: 0.8021563 (80)\ttotal: 28.8s\tremaining: 6.76s\n",
      "99:\tlearn: 0.7609388\ttest: 0.7914427\tbest: 0.7914427 (99)\ttotal: 35.6s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7914426505\n",
      "bestIteration = 99\n",
      "\n",
      "99:\tlearn: 0.7609388\ttest: 0.7914427\tbest: 0.7914427 (99)\ttotal: 35.6s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7914426505\n",
      "bestIteration = 99\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 100, 'learning_rate': 0.1, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 100, 'learning_rate': 0.1, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 1.9704738\ttest: 1.9639644\tbest: 1.9639644 (0)\ttotal: 357ms\tremaining: 35.3s\n",
      "20:\tlearn: 0.9474863\ttest: 0.9392515\tbest: 0.9392515 (20)\ttotal: 7.41s\tremaining: 27.9s\n",
      "20:\tlearn: 0.9474863\ttest: 0.9392515\tbest: 0.9392515 (20)\ttotal: 7.41s\tremaining: 27.9s\n",
      "40:\tlearn: 0.8382891\ttest: 0.8364408\tbest: 0.8364408 (40)\ttotal: 14.4s\tremaining: 20.8s\n",
      "40:\tlearn: 0.8382891\ttest: 0.8364408\tbest: 0.8364408 (40)\ttotal: 14.4s\tremaining: 20.8s\n",
      "60:\tlearn: 0.8006777\ttest: 0.8054606\tbest: 0.8054606 (60)\ttotal: 21.5s\tremaining: 13.7s\n",
      "60:\tlearn: 0.8006777\ttest: 0.8054606\tbest: 0.8054606 (60)\ttotal: 21.5s\tremaining: 13.7s\n",
      "80:\tlearn: 0.7763465\ttest: 0.7866916\tbest: 0.7866916 (80)\ttotal: 28.5s\tremaining: 6.68s\n",
      "80:\tlearn: 0.7763465\ttest: 0.7866916\tbest: 0.7866916 (80)\ttotal: 28.5s\tremaining: 6.68s\n",
      "99:\tlearn: 0.7606503\ttest: 0.7773260\tbest: 0.7773260 (99)\ttotal: 35.2s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7773260416\n",
      "bestIteration = 99\n",
      "\n",
      "99:\tlearn: 0.7606503\ttest: 0.7773260\tbest: 0.7773260 (99)\ttotal: 35.2s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7773260416\n",
      "bestIteration = 99\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 100, 'learning_rate': 0.1, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 100, 'learning_rate': 0.1, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 1.9675661\ttest: 1.9675582\tbest: 1.9675582 (0)\ttotal: 348ms\tremaining: 34.4s\n",
      "20:\tlearn: 0.9493223\ttest: 0.9472679\tbest: 0.9472679 (20)\ttotal: 7.32s\tremaining: 27.5s\n",
      "20:\tlearn: 0.9493223\ttest: 0.9472679\tbest: 0.9472679 (20)\ttotal: 7.32s\tremaining: 27.5s\n",
      "40:\tlearn: 0.8369457\ttest: 0.8383481\tbest: 0.8383481 (40)\ttotal: 14.3s\tremaining: 20.6s\n",
      "40:\tlearn: 0.8369457\ttest: 0.8383481\tbest: 0.8383481 (40)\ttotal: 14.3s\tremaining: 20.6s\n",
      "60:\tlearn: 0.7994624\ttest: 0.8068415\tbest: 0.8068415 (60)\ttotal: 21.3s\tremaining: 13.6s\n",
      "60:\tlearn: 0.7994624\ttest: 0.8068415\tbest: 0.8068415 (60)\ttotal: 21.3s\tremaining: 13.6s\n",
      "80:\tlearn: 0.7745148\ttest: 0.7888628\tbest: 0.7888628 (80)\ttotal: 28.2s\tremaining: 6.63s\n",
      "80:\tlearn: 0.7745148\ttest: 0.7888628\tbest: 0.7888628 (80)\ttotal: 28.2s\tremaining: 6.63s\n",
      "99:\tlearn: 0.7601921\ttest: 0.7798410\tbest: 0.7798410 (99)\ttotal: 34.9s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7798409527\n",
      "bestIteration = 99\n",
      "\n",
      "99:\tlearn: 0.7601921\ttest: 0.7798410\tbest: 0.7798410 (99)\ttotal: 34.9s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7798409527\n",
      "bestIteration = 99\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 100, 'learning_rate': 0.1, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 100, 'learning_rate': 0.1, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 1.9451287\ttest: 1.9451386\tbest: 1.9451386 (0)\ttotal: 346ms\tremaining: 34.3s\n",
      "20:\tlearn: 0.9457631\ttest: 0.9430364\tbest: 0.9430364 (20)\ttotal: 7.36s\tremaining: 27.7s\n",
      "20:\tlearn: 0.9457631\ttest: 0.9430364\tbest: 0.9430364 (20)\ttotal: 7.36s\tremaining: 27.7s\n",
      "40:\tlearn: 0.8378657\ttest: 0.8359950\tbest: 0.8359950 (40)\ttotal: 14.3s\tremaining: 20.6s\n",
      "40:\tlearn: 0.8378657\ttest: 0.8359950\tbest: 0.8359950 (40)\ttotal: 14.3s\tremaining: 20.6s\n",
      "60:\tlearn: 0.8006556\ttest: 0.8030690\tbest: 0.8030690 (60)\ttotal: 21.3s\tremaining: 13.6s\n",
      "60:\tlearn: 0.8006556\ttest: 0.8030690\tbest: 0.8030690 (60)\ttotal: 21.3s\tremaining: 13.6s\n",
      "80:\tlearn: 0.7775586\ttest: 0.7860412\tbest: 0.7860412 (80)\ttotal: 28.3s\tremaining: 6.64s\n",
      "80:\tlearn: 0.7775586\ttest: 0.7860412\tbest: 0.7860412 (80)\ttotal: 28.3s\tremaining: 6.64s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_BAG_L1\\model.pkl\n",
      "\t0.5576\t = Validation score   (macro_f1)\n",
      "\t181.41s\t = Training   runtime\n",
      "\t0.12s\t = Validation runtime\n",
      "\t83538.9\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_BAG_L1\\model.pkl\n",
      "\t0.5576\t = Validation score   (macro_f1)\n",
      "\t181.41s\t = Training   runtime\n",
      "\t0.12s\t = Validation runtime\n",
      "\t83538.9\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_2_BAG_L1 ... Training model for up to 423.67s of the 423.67s of remaining time.\n",
      "Fitting model: CatBoost_2_BAG_L1 ... Training model for up to 423.67s of the 423.67s of remaining time.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "99:\tlearn: 0.7619960\ttest: 0.7752282\tbest: 0.7752282 (99)\ttotal: 35s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.775228198\n",
      "bestIteration = 99\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting CatBoost_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_2_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_2_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 5 child models (S1F1 - S1F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 5 child models (S1F1 - S1F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 200, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 200, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1284306\ttest: 2.1305274\tbest: 2.1305274 (0)\ttotal: 343ms\tremaining: 1m 8s\n",
      "20:\tlearn: 1.1662732\ttest: 1.1825700\tbest: 1.1825700 (20)\ttotal: 7.29s\tremaining: 1m 2s\n",
      "20:\tlearn: 1.1662732\ttest: 1.1825700\tbest: 1.1825700 (20)\ttotal: 7.29s\tremaining: 1m 2s\n",
      "40:\tlearn: 0.9506224\ttest: 0.9736538\tbest: 0.9736538 (40)\ttotal: 14.3s\tremaining: 55.4s\n",
      "40:\tlearn: 0.9506224\ttest: 0.9736538\tbest: 0.9736538 (40)\ttotal: 14.3s\tremaining: 55.4s\n",
      "60:\tlearn: 0.8694357\ttest: 0.8978517\tbest: 0.8978517 (60)\ttotal: 21.3s\tremaining: 48.6s\n",
      "60:\tlearn: 0.8694357\ttest: 0.8978517\tbest: 0.8978517 (60)\ttotal: 21.3s\tremaining: 48.6s\n",
      "80:\tlearn: 0.8330036\ttest: 0.8654990\tbest: 0.8654990 (80)\ttotal: 28.3s\tremaining: 41.6s\n",
      "80:\tlearn: 0.8330036\ttest: 0.8654990\tbest: 0.8654990 (80)\ttotal: 28.3s\tremaining: 41.6s\n",
      "100:\tlearn: 0.8106929\ttest: 0.8467912\tbest: 0.8467912 (100)\ttotal: 35.3s\tremaining: 34.6s\n",
      "100:\tlearn: 0.8106929\ttest: 0.8467912\tbest: 0.8467912 (100)\ttotal: 35.3s\tremaining: 34.6s\n",
      "120:\tlearn: 0.7948734\ttest: 0.8347169\tbest: 0.8347169 (120)\ttotal: 42.3s\tremaining: 27.6s\n",
      "120:\tlearn: 0.7948734\ttest: 0.8347169\tbest: 0.8347169 (120)\ttotal: 42.3s\tremaining: 27.6s\n",
      "140:\tlearn: 0.7816806\ttest: 0.8247093\tbest: 0.8247093 (140)\ttotal: 49.3s\tremaining: 20.6s\n",
      "140:\tlearn: 0.7816806\ttest: 0.8247093\tbest: 0.8247093 (140)\ttotal: 49.3s\tremaining: 20.6s\n",
      "160:\tlearn: 0.7712654\ttest: 0.8172544\tbest: 0.8172544 (160)\ttotal: 56.3s\tremaining: 13.6s\n",
      "160:\tlearn: 0.7712654\ttest: 0.8172544\tbest: 0.8172544 (160)\ttotal: 56.3s\tremaining: 13.6s\n",
      "180:\tlearn: 0.7617110\ttest: 0.8104334\tbest: 0.8104334 (180)\ttotal: 1m 3s\tremaining: 6.64s\n",
      "180:\tlearn: 0.7617110\ttest: 0.8104334\tbest: 0.8104334 (180)\ttotal: 1m 3s\tremaining: 6.64s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 190.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.8075850231\n",
      "bestIteration = 189\n",
      "\n",
      "Shrink model to first 190 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 200, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 200, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1296413\ttest: 2.1303177\tbest: 2.1303177 (0)\ttotal: 356ms\tremaining: 1m 10s\n",
      "20:\tlearn: 1.1688138\ttest: 1.1772355\tbest: 1.1772355 (20)\ttotal: 7.32s\tremaining: 1m 2s\n",
      "20:\tlearn: 1.1688138\ttest: 1.1772355\tbest: 1.1772355 (20)\ttotal: 7.32s\tremaining: 1m 2s\n",
      "40:\tlearn: 0.9534212\ttest: 0.9650011\tbest: 0.9650011 (40)\ttotal: 14.3s\tremaining: 55.4s\n",
      "40:\tlearn: 0.9534212\ttest: 0.9650011\tbest: 0.9650011 (40)\ttotal: 14.3s\tremaining: 55.4s\n",
      "60:\tlearn: 0.8742699\ttest: 0.8881686\tbest: 0.8881686 (60)\ttotal: 21.2s\tremaining: 48.4s\n",
      "60:\tlearn: 0.8742699\ttest: 0.8881686\tbest: 0.8881686 (60)\ttotal: 21.2s\tremaining: 48.4s\n",
      "80:\tlearn: 0.8361520\ttest: 0.8521128\tbest: 0.8521128 (80)\ttotal: 28.2s\tremaining: 41.4s\n",
      "80:\tlearn: 0.8361520\ttest: 0.8521128\tbest: 0.8521128 (80)\ttotal: 28.2s\tremaining: 41.4s\n",
      "100:\tlearn: 0.8134499\ttest: 0.8322078\tbest: 0.8322078 (100)\ttotal: 35.2s\tremaining: 34.5s\n",
      "100:\tlearn: 0.8134499\ttest: 0.8322078\tbest: 0.8322078 (100)\ttotal: 35.2s\tremaining: 34.5s\n",
      "120:\tlearn: 0.7953881\ttest: 0.8169587\tbest: 0.8169587 (120)\ttotal: 42.1s\tremaining: 27.5s\n",
      "120:\tlearn: 0.7953881\ttest: 0.8169587\tbest: 0.8169587 (120)\ttotal: 42.1s\tremaining: 27.5s\n",
      "140:\tlearn: 0.7829745\ttest: 0.8076566\tbest: 0.8076566 (140)\ttotal: 49.1s\tremaining: 20.6s\n",
      "140:\tlearn: 0.7829745\ttest: 0.8076566\tbest: 0.8076566 (140)\ttotal: 49.1s\tremaining: 20.6s\n",
      "160:\tlearn: 0.7728152\ttest: 0.8003366\tbest: 0.8003366 (160)\ttotal: 56.1s\tremaining: 13.6s\n",
      "160:\tlearn: 0.7728152\ttest: 0.8003366\tbest: 0.8003366 (160)\ttotal: 56.1s\tremaining: 13.6s\n",
      "180:\tlearn: 0.7643156\ttest: 0.7945091\tbest: 0.7945091 (180)\ttotal: 1m 3s\tremaining: 6.62s\n",
      "180:\tlearn: 0.7643156\ttest: 0.7945091\tbest: 0.7945091 (180)\ttotal: 1m 3s\tremaining: 6.62s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 199.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.789007519\n",
      "bestIteration = 198\n",
      "\n",
      "Shrink model to first 199 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 200, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 200, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1310792\ttest: 2.1278248\tbest: 2.1278248 (0)\ttotal: 373ms\tremaining: 1m 14s\n",
      "20:\tlearn: 1.1744915\ttest: 1.1640069\tbest: 1.1640069 (20)\ttotal: 7.75s\tremaining: 1m 6s\n",
      "20:\tlearn: 1.1744915\ttest: 1.1640069\tbest: 1.1640069 (20)\ttotal: 7.75s\tremaining: 1m 6s\n",
      "40:\tlearn: 0.9574940\ttest: 0.9488463\tbest: 0.9488463 (40)\ttotal: 15.1s\tremaining: 58.7s\n",
      "40:\tlearn: 0.9574940\ttest: 0.9488463\tbest: 0.9488463 (40)\ttotal: 15.1s\tremaining: 58.7s\n",
      "60:\tlearn: 0.8772882\ttest: 0.8719028\tbest: 0.8719028 (60)\ttotal: 22.5s\tremaining: 51.4s\n",
      "60:\tlearn: 0.8772882\ttest: 0.8719028\tbest: 0.8719028 (60)\ttotal: 22.5s\tremaining: 51.4s\n",
      "80:\tlearn: 0.8389116\ttest: 0.8365306\tbest: 0.8365306 (80)\ttotal: 29.9s\tremaining: 43.9s\n",
      "80:\tlearn: 0.8389116\ttest: 0.8365306\tbest: 0.8365306 (80)\ttotal: 29.9s\tremaining: 43.9s\n",
      "100:\tlearn: 0.8162866\ttest: 0.8175745\tbest: 0.8175745 (100)\ttotal: 37.2s\tremaining: 36.5s\n",
      "100:\tlearn: 0.8162866\ttest: 0.8175745\tbest: 0.8175745 (100)\ttotal: 37.2s\tremaining: 36.5s\n",
      "120:\tlearn: 0.7987140\ttest: 0.8030494\tbest: 0.8030494 (120)\ttotal: 44.6s\tremaining: 29.1s\n",
      "120:\tlearn: 0.7987140\ttest: 0.8030494\tbest: 0.8030494 (120)\ttotal: 44.6s\tremaining: 29.1s\n",
      "140:\tlearn: 0.7862378\ttest: 0.7934602\tbest: 0.7934602 (140)\ttotal: 52s\tremaining: 21.8s\n",
      "140:\tlearn: 0.7862378\ttest: 0.7934602\tbest: 0.7934602 (140)\ttotal: 52s\tremaining: 21.8s\n",
      "160:\tlearn: 0.7760479\ttest: 0.7863148\tbest: 0.7863148 (160)\ttotal: 59.4s\tremaining: 14.4s\n",
      "160:\tlearn: 0.7760479\ttest: 0.7863148\tbest: 0.7863148 (160)\ttotal: 59.4s\tremaining: 14.4s\n",
      "180:\tlearn: 0.7677281\ttest: 0.7808296\tbest: 0.7808296 (180)\ttotal: 1m 6s\tremaining: 7.01s\n",
      "180:\tlearn: 0.7677281\ttest: 0.7808296\tbest: 0.7808296 (180)\ttotal: 1m 6s\tremaining: 7.01s\n",
      "199:\tlearn: 0.7594850\ttest: 0.7754017\tbest: 0.7754017 (199)\ttotal: 1m 13s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7754017023\n",
      "bestIteration = 199\n",
      "\n",
      "199:\tlearn: 0.7594850\ttest: 0.7754017\tbest: 0.7754017 (199)\ttotal: 1m 13s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7754017023\n",
      "bestIteration = 199\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 200, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 200, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1295707\ttest: 2.1295694\tbest: 2.1295694 (0)\ttotal: 388ms\tremaining: 1m 17s\n",
      "20:\tlearn: 1.1735085\ttest: 1.1696674\tbest: 1.1696674 (20)\ttotal: 7.66s\tremaining: 1m 5s\n",
      "20:\tlearn: 1.1735085\ttest: 1.1696674\tbest: 1.1696674 (20)\ttotal: 7.66s\tremaining: 1m 5s\n",
      "40:\tlearn: 0.9562542\ttest: 0.9546034\tbest: 0.9546034 (40)\ttotal: 14.6s\tremaining: 56.6s\n",
      "40:\tlearn: 0.9562542\ttest: 0.9546034\tbest: 0.9546034 (40)\ttotal: 14.6s\tremaining: 56.6s\n",
      "60:\tlearn: 0.8764416\ttest: 0.8760737\tbest: 0.8760737 (60)\ttotal: 21.6s\tremaining: 49.1s\n",
      "60:\tlearn: 0.8764416\ttest: 0.8760737\tbest: 0.8760737 (60)\ttotal: 21.6s\tremaining: 49.1s\n",
      "80:\tlearn: 0.8390858\ttest: 0.8412912\tbest: 0.8412912 (80)\ttotal: 28.5s\tremaining: 41.9s\n",
      "80:\tlearn: 0.8390858\ttest: 0.8412912\tbest: 0.8412912 (80)\ttotal: 28.5s\tremaining: 41.9s\n",
      "100:\tlearn: 0.8172775\ttest: 0.8216300\tbest: 0.8216300 (100)\ttotal: 35.5s\tremaining: 34.8s\n",
      "100:\tlearn: 0.8172775\ttest: 0.8216300\tbest: 0.8216300 (100)\ttotal: 35.5s\tremaining: 34.8s\n",
      "120:\tlearn: 0.7997649\ttest: 0.8070443\tbest: 0.8070443 (120)\ttotal: 42.4s\tremaining: 27.7s\n",
      "120:\tlearn: 0.7997649\ttest: 0.8070443\tbest: 0.8070443 (120)\ttotal: 42.4s\tremaining: 27.7s\n",
      "140:\tlearn: 0.7867050\ttest: 0.7968839\tbest: 0.7968839 (140)\ttotal: 49.3s\tremaining: 20.6s\n",
      "140:\tlearn: 0.7867050\ttest: 0.7968839\tbest: 0.7968839 (140)\ttotal: 49.3s\tremaining: 20.6s\n",
      "160:\tlearn: 0.7775273\ttest: 0.7901803\tbest: 0.7901803 (160)\ttotal: 56.2s\tremaining: 13.6s\n",
      "160:\tlearn: 0.7775273\ttest: 0.7901803\tbest: 0.7901803 (160)\ttotal: 56.2s\tremaining: 13.6s\n",
      "180:\tlearn: 0.7679734\ttest: 0.7838536\tbest: 0.7838536 (180)\ttotal: 1m 3s\tremaining: 6.63s\n",
      "180:\tlearn: 0.7679734\ttest: 0.7838536\tbest: 0.7838536 (180)\ttotal: 1m 3s\tremaining: 6.63s\n",
      "199:\tlearn: 0.7601831\ttest: 0.7786085\tbest: 0.7786085 (199)\ttotal: 1m 9s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7786084728\n",
      "bestIteration = 199\n",
      "\n",
      "199:\tlearn: 0.7601831\ttest: 0.7786085\tbest: 0.7786085 (199)\ttotal: 1m 9s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7786084728\n",
      "bestIteration = 199\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 200, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 200, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'thread_count': 24, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1179937\ttest: 2.1179986\tbest: 2.1179986 (0)\ttotal: 357ms\tremaining: 1m 11s\n",
      "20:\tlearn: 1.1730663\ttest: 1.1751416\tbest: 1.1751416 (20)\ttotal: 7.27s\tremaining: 1m 2s\n",
      "20:\tlearn: 1.1730663\ttest: 1.1751416\tbest: 1.1751416 (20)\ttotal: 7.27s\tremaining: 1m 2s\n",
      "40:\tlearn: 0.9578061\ttest: 0.9581168\tbest: 0.9581168 (40)\ttotal: 14.2s\tremaining: 55.2s\n",
      "40:\tlearn: 0.9578061\ttest: 0.9581168\tbest: 0.9581168 (40)\ttotal: 14.2s\tremaining: 55.2s\n",
      "60:\tlearn: 0.8775711\ttest: 0.8765534\tbest: 0.8765534 (60)\ttotal: 21.2s\tremaining: 48.3s\n",
      "60:\tlearn: 0.8775711\ttest: 0.8765534\tbest: 0.8765534 (60)\ttotal: 21.2s\tremaining: 48.3s\n",
      "80:\tlearn: 0.8402164\ttest: 0.8408570\tbest: 0.8408570 (80)\ttotal: 28.1s\tremaining: 41.4s\n",
      "80:\tlearn: 0.8402164\ttest: 0.8408570\tbest: 0.8408570 (80)\ttotal: 28.1s\tremaining: 41.4s\n",
      "100:\tlearn: 0.8190767\ttest: 0.8213991\tbest: 0.8213991 (100)\ttotal: 35.1s\tremaining: 34.5s\n",
      "100:\tlearn: 0.8190767\ttest: 0.8213991\tbest: 0.8213991 (100)\ttotal: 35.1s\tremaining: 34.5s\n",
      "120:\tlearn: 0.8009432\ttest: 0.8056614\tbest: 0.8056614 (120)\ttotal: 42.1s\tremaining: 27.5s\n",
      "120:\tlearn: 0.8009432\ttest: 0.8056614\tbest: 0.8056614 (120)\ttotal: 42.1s\tremaining: 27.5s\n",
      "140:\tlearn: 0.7883614\ttest: 0.7963618\tbest: 0.7963618 (140)\ttotal: 49.1s\tremaining: 20.5s\n",
      "140:\tlearn: 0.7883614\ttest: 0.7963618\tbest: 0.7963618 (140)\ttotal: 49.1s\tremaining: 20.5s\n",
      "160:\tlearn: 0.7771577\ttest: 0.7878524\tbest: 0.7878524 (160)\ttotal: 56s\tremaining: 13.6s\n",
      "160:\tlearn: 0.7771577\ttest: 0.7878524\tbest: 0.7878524 (160)\ttotal: 56s\tremaining: 13.6s\n",
      "180:\tlearn: 0.7676237\ttest: 0.7812906\tbest: 0.7812906 (180)\ttotal: 1m 3s\tremaining: 6.62s\n",
      "180:\tlearn: 0.7676237\ttest: 0.7812906\tbest: 0.7812906 (180)\ttotal: 1m 3s\tremaining: 6.62s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_2_BAG_L1\\model.pkl\n",
      "\t0.5585\t = Validation score   (macro_f1)\n",
      "\t353.68s\t = Training   runtime\n",
      "\t0.21s\t = Validation runtime\n",
      "\t49796.8\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_2_BAG_L1\\model.pkl\n",
      "\t0.5585\t = Validation score   (macro_f1)\n",
      "\t353.68s\t = Training   runtime\n",
      "\t0.21s\t = Validation runtime\n",
      "\t49796.8\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Fitting model: XGBoost_BAG_L1 ... Training model for up to 68.30s of the 68.29s of remaining time.\n",
      "Fitting model: XGBoost_BAG_L1 ... Training model for up to 68.30s of the 68.29s of remaining time.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "199:\tlearn: 0.7590654\ttest: 0.7752966\tbest: 0.7752966 (199)\ttotal: 1m 9s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7752965916\n",
      "bestIteration = 199\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting XGBoost_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 5 child models (S1F1 - S1F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 5 child models (S1F1 - S1F5) | Fitting with SequentialLocalFoldFittingStrategy\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0]\tvalidation_0-mlogloss:2.04745\tvalidation_0-_macro_f1:-0.54697\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Ran out of time, early stopping on iteration 26. Best iteration is: \t[24]\t-0.575627\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[26]\tvalidation_0-mlogloss:0.86311\tvalidation_0-_macro_f1:-0.57460\n",
      "[0]\tvalidation_0-mlogloss:2.04401\tvalidation_0-_macro_f1:-0.55479\n",
      "[0]\tvalidation_0-mlogloss:2.04401\tvalidation_0-_macro_f1:-0.55479\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Ran out of time, early stopping on iteration 29. Best iteration is: \t[26]\t-0.586855\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[28]\tvalidation_0-mlogloss:0.83034\tvalidation_0-_macro_f1:-0.58379\n",
      "[0]\tvalidation_0-mlogloss:2.04357\tvalidation_0-_macro_f1:-0.55337\n",
      "[0]\tvalidation_0-mlogloss:2.04357\tvalidation_0-_macro_f1:-0.55337\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Ran out of time, early stopping on iteration 30. Best iteration is: \t[30]\t-0.584394\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[29]\tvalidation_0-mlogloss:0.81078\tvalidation_0-_macro_f1:-0.58363\n",
      "[0]\tvalidation_0-mlogloss:2.04293\tvalidation_0-_macro_f1:-0.56796\n",
      "[0]\tvalidation_0-mlogloss:2.04293\tvalidation_0-_macro_f1:-0.56796\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Ran out of time, early stopping on iteration 34. Best iteration is: \t[34]\t-0.596611\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[33]\tvalidation_0-mlogloss:0.78625\tvalidation_0-_macro_f1:-0.59582\n",
      "[0]\tvalidation_0-mlogloss:2.04284\tvalidation_0-_macro_f1:-0.56816\n",
      "[0]\tvalidation_0-mlogloss:2.04284\tvalidation_0-_macro_f1:-0.56816\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Ran out of time, early stopping on iteration 40. Best iteration is: \t[23]\t-0.600493\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[39]\tvalidation_0-mlogloss:0.75962\tvalidation_0-_macro_f1:-0.59940\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "\t0.589\t = Validation score   (macro_f1)\n",
      "\t62.21s\t = Training   runtime\n",
      "\t1.73s\t = Validation runtime\n",
      "\t5951.3\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "\t0.589\t = Validation score   (macro_f1)\n",
      "\t62.21s\t = Training   runtime\n",
      "\t1.73s\t = Validation runtime\n",
      "\t5951.3\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\utils\\oof.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L2: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L2 ... Training model for up to 360.00s of the 2.81s of remaining time.\n",
      "\tFitting WeightedEnsemble_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L2: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L2 ... Training model for up to 360.00s of the 2.81s of remaining time.\n",
      "\tFitting WeightedEnsemble_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Ensemble size: 24\n",
      "Ensemble weights: \n",
      "[0.         0.95833333 0.         0.         0.         0.04166667]\n",
      "\t0.0s\t= Estimated out-of-fold prediction time...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\utils\\oof.pkl\n",
      "Ensemble size: 24\n",
      "Ensemble weights: \n",
      "[0.         0.95833333 0.         0.         0.         0.04166667]\n",
      "\t0.0s\t= Estimated out-of-fold prediction time...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_2_BAG_L1': 0.958, 'XGBoost_BAG_L1': 0.042}\n",
      "\t0.5974\t = Validation score   (macro_f1)\n",
      "\t1.26s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t4904.6\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "AutoGluon training complete, total runtime = 898.7s ... Best model: WeightedEnsemble_L2 | Estimated inference throughput: 4904.6 rows/s (10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_2_BAG_L1': 0.958, 'XGBoost_BAG_L1': 0.042}\n",
      "\t0.5974\t = Validation score   (macro_f1)\n",
      "\t1.26s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t4904.6\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "AutoGluon training complete, total runtime = 898.7s ... Best model: WeightedEnsemble_L2 | Estimated inference throughput: 4904.6 rows/s (10280 batch size)\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\learner.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\predictor.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\learner.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\predictor.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\version.txt with contents \"1.3.1\"\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\metadata.json\n",
      "TabularPredictor saved. To load, use: predictor = TabularPredictor.load(\"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\")\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\version.txt with contents \"1.3.1\"\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\metadata.json\n",
      "TabularPredictor saved. To load, use: predictor = TabularPredictor.load(\"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\")\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "====================================================================================================\n",
      "初级模型训练完成!\n",
      "====================================================================================================\n"
     ]
    }
   ],
   "source": [
    "print(\"=\"*100)\n",
    "print(\"步骤4: Autogluon模型训练 - 初级版本\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 创建输出目录\n",
    "output_dir_quick = './model/autogluon_quick'\n",
    "os.makedirs(output_dir_quick, exist_ok=True)\n",
    "\n",
    "print(f\"\\n模型输出目录: {output_dir_quick}\")\n",
    "print(f\"开始训练初级版本模型(快速验证)...\")\n",
    "print(f\"预计训练时间: 10-15分钟\")\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "\n",
    "# 训练快速模型\n",
    "predictor_quick = TabularPredictor(\n",
    "    label='FLAG',\n",
    "    problem_type='multiclass',\n",
    "    eval_metric=macro_f1_scorer,\n",
    "    path=output_dir_quick,\n",
    "    verbosity=1  # 改为2，只显示重要进度信息，减少Loading日志\n",
    ").fit(\n",
    "    train_data=train_data_ag,\n",
    "    time_limit=900,  # 15分钟\n",
    "    presets='medium_quality',\n",
    "    num_bag_folds=5,\n",
    "    num_bag_sets=1,\n",
    "    num_stack_levels=0,\n",
    "    hyperparameters={\n",
    "        'GBM': [\n",
    "            {'num_boost_round': 100, 'learning_rate': 0.1},\n",
    "            {'num_boost_round': 200, 'learning_rate': 0.05},\n",
    "        ],\n",
    "        'CAT': [\n",
    "            {'iterations': 100, 'learning_rate': 0.1},\n",
    "            {'iterations': 200, 'learning_rate': 0.05},\n",
    "        ],\n",
    "        'XGB': [\n",
    "            {'n_estimators': 100, 'learning_rate': 0.1},\n",
    "            {'n_estimators': 200, 'learning_rate': 0.05},\n",
    "        ],\n",
    "        'RF': [\n",
    "            {'n_estimators': 100},\n",
    "        ],\n",
    "    }\n",
    ")\n",
    "\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"初级模型训练完成!\")\n",
    "print(\"=\"*100)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "39e19870",
   "metadata": {},
   "source": [
    "## 初级模型评估与结果分析"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "2650b430",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "These features in provided data are not utilized by the predictor and will be ignored: ['AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', 'total_visit_count', 'visit_days_min', 'daily_visits_mean', 'daily_visits_max', 'daily_visits_min', 'daily_visits_std', 'first_visit_days', 'last_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'daily_unique_pages_mean', 'daily_unique_pages_max', 'daily_unique_pages_std', 'mb_trnflw_top8_transcode_amount_mean', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'aps_last_month_amt', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Computing feature importance via permutation shuffling for 1209 features using 10000 rows with 1 shuffle sets... Time limit: 60s...\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Computing feature importance via permutation shuffling for 1209 features using 10000 rows with 1 shuffle sets... Time limit: 60s...\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "====================================================================================================\n",
      "步骤5: 初级模型评估\n",
      "====================================================================================================\n",
      "\n",
      "模型排行榜 (Top 10):\n",
      "                 model  score_val eval_metric  pred_time_val    fit_time  \\\n",
      "0  WeightedEnsemble_L2   0.597384    macro_f1       2.102380  237.607342   \n",
      "1    LightGBM_2_BAG_L1   0.597344    macro_f1       0.367023  174.138322   \n",
      "2      LightGBM_BAG_L1   0.591625    macro_f1       0.259209   94.412852   \n",
      "3       XGBoost_BAG_L1   0.588969    macro_f1       1.727356   62.207119   \n",
      "4    CatBoost_2_BAG_L1   0.558548    macro_f1       0.206439  353.675366   \n",
      "5      CatBoost_BAG_L1   0.557559    macro_f1       0.123056  181.411311   \n",
      "6  RandomForest_BAG_L1   0.554885    macro_f1       6.658027    5.018635   \n",
      "\n",
      "   pred_time_val_marginal  fit_time_marginal  stack_level  can_infer  \\\n",
      "0                0.008000           1.261901            2       True   \n",
      "1                0.367023         174.138322            1       True   \n",
      "2                0.259209          94.412852            1       True   \n",
      "3                1.727356          62.207119            1       True   \n",
      "4                0.206439         353.675366            1       True   \n",
      "5                0.123056         181.411311            1       True   \n",
      "6                6.658027           5.018635            1       True   \n",
      "\n",
      "   fit_order  \n",
      "0          7  \n",
      "1          2  \n",
      "2          1  \n",
      "3          6  \n",
      "4          5  \n",
      "5          4  \n",
      "6          3  \n",
      "\n",
      "最佳模型: WeightedEnsemble_L2\n",
      "最佳分数 (Macro-F1): 0.597384\n",
      "\n",
      "计算特征重要性...\n",
      "提示: 使用优化参数加速计算 (subsample_size=1000, num_shuffle_sets=1)\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "\t2452.09s\t= Expected runtime (2452.09s per shuffle set)\n",
      "\t2452.09s\t= Expected runtime (2452.09s per shuffle set)\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "\t2044.08s\t= Actual runtime (Completed 1 of 1 shuffle sets)\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Top 20 重要特征:\n",
      "                                                  importance  stddev  p_value  \\\n",
      "NTRL_CUST_AGE                                       0.214044     NaN      NaN   \n",
      "AST_YAVER_AUM_BAL                                   0.105362     NaN      NaN   \n",
      "DEBT_LOAN_BAL_YAVER                                 0.068901     NaN      NaN   \n",
      "aps_all_30d_sum                                     0.042650     NaN      NaN   \n",
      "NATURE_AGE_SEX_INTERACT                             0.037817     NaN      NaN   \n",
      "ASSET_SAVER_FA_BAL                                  0.019649     NaN      NaN   \n",
      "main_unit_ratio                                     0.019181     NaN      NaN   \n",
      "ASSET_AUM_GROWTH_M2S                                0.018865     NaN      NaN   \n",
      "mb_qrytrnflw_count_last_30d                         0.016605     NaN      NaN   \n",
      "aps_last_txn_days_ago                               0.015985     NaN      NaN   \n",
      "ASSET_YAVER_FA_BAL                                  0.015886     NaN      NaN   \n",
      "page_796f39eb9f0d6e6ff63d327d96fedeb5_last_visit    0.014712     NaN      NaN   \n",
      "TPAY_ALI_SEAN_TR_AMT                                0.014585     NaN      NaN   \n",
      "TPAY_WX_MOTH_AMT_RATIO                              0.014202     NaN      NaN   \n",
      "aps_cod_freq_min_60d                                0.012745     NaN      NaN   \n",
      "max_nunique_days_to_now_0                           0.011417     NaN      NaN   \n",
      "AST_SAVER_AUM_BAL                                   0.010845     NaN      NaN   \n",
      "NATURE_AGE_BY_SEX_DIFF                              0.009758     NaN      NaN   \n",
      "NATURE_AGE_RANK_INTERACT                            0.009289     NaN      NaN   \n",
      "ASSET_SAVER_TD_BAL                                  0.008848     NaN      NaN   \n",
      "\n",
      "                                                  n  p99_high  p99_low  \n",
      "NTRL_CUST_AGE                                     1       NaN      NaN  \n",
      "AST_YAVER_AUM_BAL                                 1       NaN      NaN  \n",
      "DEBT_LOAN_BAL_YAVER                               1       NaN      NaN  \n",
      "aps_all_30d_sum                                   1       NaN      NaN  \n",
      "NATURE_AGE_SEX_INTERACT                           1       NaN      NaN  \n",
      "ASSET_SAVER_FA_BAL                                1       NaN      NaN  \n",
      "main_unit_ratio                                   1       NaN      NaN  \n",
      "ASSET_AUM_GROWTH_M2S                              1       NaN      NaN  \n",
      "mb_qrytrnflw_count_last_30d                       1       NaN      NaN  \n",
      "aps_last_txn_days_ago                             1       NaN      NaN  \n",
      "ASSET_YAVER_FA_BAL                                1       NaN      NaN  \n",
      "page_796f39eb9f0d6e6ff63d327d96fedeb5_last_visit  1       NaN      NaN  \n",
      "TPAY_ALI_SEAN_TR_AMT                              1       NaN      NaN  \n",
      "TPAY_WX_MOTH_AMT_RATIO                            1       NaN      NaN  \n",
      "aps_cod_freq_min_60d                              1       NaN      NaN  \n",
      "max_nunique_days_to_now_0                         1       NaN      NaN  \n",
      "AST_SAVER_AUM_BAL                                 1       NaN      NaN  \n",
      "NATURE_AGE_BY_SEX_DIFF                            1       NaN      NaN  \n",
      "NATURE_AGE_RANK_INTERACT                          1       NaN      NaN  \n",
      "ASSET_SAVER_TD_BAL                                1       NaN      NaN  \n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "训练集Macro-F1: 0.879935\n",
      "\n",
      "训练集分类报告:\n",
      "              precision    recall  f1-score   support\n",
      "\n",
      "           1     0.9072    0.9040    0.9056      1459\n",
      "           2     1.0000    0.9450    0.9717       309\n",
      "           3     0.7028    0.8346    0.7631      5586\n",
      "           4     0.8635    0.7951    0.8279     15303\n",
      "           5     0.9573    0.9575    0.9574      8193\n",
      "           6     0.7585    0.8720    0.8113     10261\n",
      "           7     0.9888    0.8268    0.9006      1276\n",
      "           8     0.9199    0.9796    0.9488      2498\n",
      "           9     0.8029    0.6411    0.7130      6476\n",
      "          10     1.0000    1.0000    1.0000        36\n",
      "\n",
      "    accuracy                         0.8351     51397\n",
      "   macro avg     0.8901    0.8756    0.8799     51397\n",
      "weighted avg     0.8404    0.8351    0.8346     51397\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\XGBoost_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_quick\\models\\WeightedEnsemble_L2\\model.pkl\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "测试集预测完成!\n",
      "测试集预测标签分布:\n",
      "  类别 1:    155 ( 2.59%)\n",
      "  类别 3:     18 ( 0.30%)\n",
      "  类别 4:   2890 (48.37%)\n",
      "  类别 5:   1028 (17.21%)\n",
      "  类别 6:     51 ( 0.85%)\n",
      "  类别 7:     66 ( 1.10%)\n",
      "  类别 8:    297 ( 4.97%)\n",
      "  类别 9:   1470 (24.60%)\n",
      "\n",
      "初级模型预测结果已保存: ./model/result_quick.csv\n"
     ]
    }
   ],
   "source": [
    "print(\"=\"*100)\n",
    "print(\"步骤5: 初级模型评估\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 查看模型性能\n",
    "leaderboard_baseline = predictor_quick.leaderboard(silent=True)\n",
    "print(\"\\n模型排行榜 (Top 10):\")\n",
    "print(leaderboard_baseline.head(10))\n",
    "    \n",
    "# 最佳模型\n",
    "best_model_name = leaderboard_baseline.iloc[0]['model']\n",
    "best_score = leaderboard_baseline.iloc[0]['score_val']\n",
    "print(f\"\\n最佳模型: {best_model_name}\")\n",
    "print(f\"最佳分数 (Macro-F1): {best_score:.6f}\")\n",
    "    \n",
    "# 特征重要性 (优化版本 - 加速计算)\n",
    "print(f\"\\n计算特征重要性...\")\n",
    "print(f\"提示: 使用优化参数加速计算 (subsample_size=10000, num_shuffle_sets=1)\")\n",
    "    \n",
    "feature_importance = predictor_quick.feature_importance(\n",
    "    data=train_data_ag,\n",
    "    subsample_size=10000,  # 只使用10000个样本 \n",
    "    num_shuffle_sets=1,   # 只shuffle 1次 \n",
    "    time_limit=60,        # 限制60秒\n",
    "    silent=False\n",
    ")\n",
    "print(f\"\\nTop 20 重要特征:\")\n",
    "print(feature_importance.head(20))\n",
    "\n",
    "# 内部验证集性能说明\n",
    "print(f\"\\n\" + \"=\"*100)\n",
    "print(f\"模型验证性能\")\n",
    "print(f\"=\"*100)\n",
    "print(f\"\\n⚠️ 评估说明:\")\n",
    "print(f\"  - 最佳模型验证集分数(内部交叉验证): {best_score:.6f}\")\n",
    "print(f\"  - 该分数是Autogluon在训练时使用内部验证集计算的\")\n",
    "print(f\"  - 这是模型的真实泛化性能评估\")\n",
    "print(f\"\\n✅ 不再使用训练集评估(避免过度乐观):\")\n",
    "print(f\"  - 用训练集评估训练好的模型会得到虚高的分数\")\n",
    "print(f\"  - 正确做法是使用独立验证集或内部交叉验证\")\n",
    "\n",
    "# 预测测试集\n",
    "print(f\"\\n\" + \"=\"*100)\n",
    "print(f\"测试集预测\")\n",
    "print(f\"=\"*100)\n",
    "\n",
    "test_pred_quick = predictor_quick.predict(test_data_ag)\n",
    "test_pred_proba_quick = predictor_quick.predict_proba(test_data_ag)\n",
    "\n",
    "print(f\"\\n测试集预测完成!\")\n",
    "print(f\"测试集预测标签分布:\")\n",
    "test_pred_dist_quick = pd.Series(test_pred_quick).value_counts().sort_index()\n",
    "for label, count in test_pred_dist_quick.items():\n",
    "    rate = count / len(test_pred_quick) * 100\n",
    "    print(f\"  类别 {label}: {count:6d} ({rate:5.2f}%)\")\n",
    "\n",
    "# 保存初级模型预测结果\n",
    "result_quick_df = pd.DataFrame({\n",
    "    'CUST_NO': test_cust_no,\n",
    "    'FLAG': test_pred_quick\n",
    "})\n",
    "\n",
    "result_quick_file = './model/result_quick.csv'\n",
    "result_quick_df.to_csv(result_quick_file, index=False, header=False)\n",
    "print(f\"\\n初级模型预测结果已保存: {result_quick_file}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "06f86022",
   "metadata": {},
   "source": [
    "## Autogluon模型训练 - 高级版本(深度优化)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "b885c191",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning: path already exists! This predictor may overwrite an existing predictor! path=\"./model/autogluon_advanced\"\n",
      "Verbosity: 3 (Detailed Logging)\n",
      "=================== System Info ===================\n",
      "AutoGluon Version:  1.3.1\n",
      "Python Version:     3.10.18\n",
      "Operating System:   Windows\n",
      "Platform Machine:   AMD64\n",
      "Platform Version:   10.0.26100\n",
      "CPU Count:          32\n",
      "GPU Count:          0\n",
      "Memory Avail:       107.49 GB / 127.82 GB (84.1%)\n",
      "Disk Space Avail:   1328.57 GB / 3815.38 GB (34.8%)\n",
      "===================================================\n",
      "Presets specified: ['best_quality']\n",
      "============ fit kwarg info ============\n",
      "User Specified kwargs:\n",
      "{'ag_args_fit': {'num_gpus': 0},\n",
      " 'auto_stack': True,\n",
      " 'excluded_model_types': ['KNN'],\n",
      " 'num_bag_folds': 5,\n",
      " 'num_bag_sets': 2,\n",
      " 'num_stack_levels': 2}\n",
      "Full kwargs:\n",
      "{'_feature_generator_kwargs': None,\n",
      " '_save_bag_folds': None,\n",
      " 'ag_args': None,\n",
      " 'ag_args_ensemble': None,\n",
      " 'ag_args_fit': {'num_gpus': 0},\n",
      " 'auto_stack': True,\n",
      " 'calibrate': 'auto',\n",
      " 'delay_bag_sets': False,\n",
      " 'ds_args': {'clean_up_fits': True,\n",
      "             'detection_time_frac': 0.25,\n",
      "             'enable_callbacks': False,\n",
      "             'enable_ray_logging': True,\n",
      "             'holdout_data': None,\n",
      "             'holdout_frac': 0.1111111111111111,\n",
      "             'memory_safe_fits': True,\n",
      "             'n_folds': 2,\n",
      "             'n_repeats': 1,\n",
      "             'validation_procedure': 'holdout'},\n",
      " 'excluded_model_types': ['KNN'],\n",
      " 'feature_generator': 'auto',\n",
      " 'feature_prune_kwargs': None,\n",
      " 'holdout_frac': None,\n",
      " 'hyperparameter_tune_kwargs': None,\n",
      " 'included_model_types': None,\n",
      " 'keep_only_best': False,\n",
      " 'learning_curves': False,\n",
      " 'name_suffix': None,\n",
      " 'num_bag_folds': 5,\n",
      " 'num_bag_sets': 2,\n",
      " 'num_stack_levels': 2,\n",
      " 'pseudo_data': None,\n",
      " 'raise_on_model_failure': False,\n",
      " 'raise_on_no_models_fitted': True,\n",
      " 'refit_full': False,\n",
      " 'save_bag_folds': None,\n",
      " 'save_space': False,\n",
      " 'set_best_to_refit_full': False,\n",
      " 'test_data': None,\n",
      " 'unlabeled_data': None,\n",
      " 'use_bag_holdout': False,\n",
      " 'verbosity': 3}\n",
      "========================================\n",
      "Setting dynamic_stacking from 'auto' to True. Reason: Enable dynamic_stacking when use_bag_holdout is disabled. (use_bag_holdout=False)\n",
      "Stack configuration (auto_stack=True): num_stack_levels=2, num_bag_folds=5, num_bag_sets=2\n",
      "DyStack is enabled (dynamic_stacking=True). AutoGluon will try to determine whether the input data is affected by stacked overfitting and enable or disable stacking as a consequence.\n",
      "\tThis is used to identify the optimal `num_stack_levels` value. Copies of AutoGluon will be fit on subsets of the data. Then holdout validation data is used to detect stacked overfitting.\n",
      "\tRunning DyStack for up to 2700s of the 10800s of remaining time (25%).\n",
      "Verbosity: 3 (Detailed Logging)\n",
      "=================== System Info ===================\n",
      "AutoGluon Version:  1.3.1\n",
      "Python Version:     3.10.18\n",
      "Operating System:   Windows\n",
      "Platform Machine:   AMD64\n",
      "Platform Version:   10.0.26100\n",
      "CPU Count:          32\n",
      "GPU Count:          0\n",
      "Memory Avail:       107.49 GB / 127.82 GB (84.1%)\n",
      "Disk Space Avail:   1328.57 GB / 3815.38 GB (34.8%)\n",
      "===================================================\n",
      "Presets specified: ['best_quality']\n",
      "============ fit kwarg info ============\n",
      "User Specified kwargs:\n",
      "{'ag_args_fit': {'num_gpus': 0},\n",
      " 'auto_stack': True,\n",
      " 'excluded_model_types': ['KNN'],\n",
      " 'num_bag_folds': 5,\n",
      " 'num_bag_sets': 2,\n",
      " 'num_stack_levels': 2}\n",
      "Full kwargs:\n",
      "{'_feature_generator_kwargs': None,\n",
      " '_save_bag_folds': None,\n",
      " 'ag_args': None,\n",
      " 'ag_args_ensemble': None,\n",
      " 'ag_args_fit': {'num_gpus': 0},\n",
      " 'auto_stack': True,\n",
      " 'calibrate': 'auto',\n",
      " 'delay_bag_sets': False,\n",
      " 'ds_args': {'clean_up_fits': True,\n",
      "             'detection_time_frac': 0.25,\n",
      "             'enable_callbacks': False,\n",
      "             'enable_ray_logging': True,\n",
      "             'holdout_data': None,\n",
      "             'holdout_frac': 0.1111111111111111,\n",
      "             'memory_safe_fits': True,\n",
      "             'n_folds': 2,\n",
      "             'n_repeats': 1,\n",
      "             'validation_procedure': 'holdout'},\n",
      " 'excluded_model_types': ['KNN'],\n",
      " 'feature_generator': 'auto',\n",
      " 'feature_prune_kwargs': None,\n",
      " 'holdout_frac': None,\n",
      " 'hyperparameter_tune_kwargs': None,\n",
      " 'included_model_types': None,\n",
      " 'keep_only_best': False,\n",
      " 'learning_curves': False,\n",
      " 'name_suffix': None,\n",
      " 'num_bag_folds': 5,\n",
      " 'num_bag_sets': 2,\n",
      " 'num_stack_levels': 2,\n",
      " 'pseudo_data': None,\n",
      " 'raise_on_model_failure': False,\n",
      " 'raise_on_no_models_fitted': True,\n",
      " 'refit_full': False,\n",
      " 'save_bag_folds': None,\n",
      " 'save_space': False,\n",
      " 'set_best_to_refit_full': False,\n",
      " 'test_data': None,\n",
      " 'unlabeled_data': None,\n",
      " 'use_bag_holdout': False,\n",
      " 'verbosity': 3}\n",
      "========================================\n",
      "Setting dynamic_stacking from 'auto' to True. Reason: Enable dynamic_stacking when use_bag_holdout is disabled. (use_bag_holdout=False)\n",
      "Stack configuration (auto_stack=True): num_stack_levels=2, num_bag_folds=5, num_bag_sets=2\n",
      "DyStack is enabled (dynamic_stacking=True). AutoGluon will try to determine whether the input data is affected by stacked overfitting and enable or disable stacking as a consequence.\n",
      "\tThis is used to identify the optimal `num_stack_levels` value. Copies of AutoGluon will be fit on subsets of the data. Then holdout validation data is used to detect stacked overfitting.\n",
      "\tRunning DyStack for up to 2700s of the 10800s of remaining time (25%).\n",
      "\t\tContext path: \"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\"\n",
      "\t\tContext path: \"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\"\n",
      "Running DyStack sub-fit ...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\learner.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\predictor.pkl\n",
      "Running DyStack sub-fit ...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\learner.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\predictor.pkl\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "====================================================================================================\n",
      "步骤6: Autogluon模型训练 - 高级版本(深度优化)\n",
      "====================================================================================================\n",
      "\n",
      "模型输出目录: ./model/autogluon_advanced\n",
      "开始训练高级版本模型(深度优化)...\n",
      "预计训练时间: 2-3小时\n",
      "\n",
      "特性:\n",
      "  1. 多层Stacking集成\n",
      "  2. 更精细的超参数搜索\n",
      "  3. 多种Bagging策略\n",
      "  4. 神经网络模型集成\n",
      "  5. 特征工程增强\n",
      "\n",
      "====================================================================================================\n",
      "\n",
      "类别不平衡比: 425.08:1\n",
      "警告: 存在严重类别不平衡!\n",
      "Autogluon会自动在模型训练时处理类别不平衡问题\n",
      "\n",
      "开始训练...\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Beginning AutoGluon training ... Time limit = 2700s\n",
      "AutoGluon will save models to \"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\"\n",
      "Train Data Rows:    45686\n",
      "Train Data Columns: 1244\n",
      "Label Column:       FLAG\n",
      "Problem Type:       multiclass\n",
      "Preprocessing data ...\n",
      "AutoGluon will save models to \"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\"\n",
      "Train Data Rows:    45686\n",
      "Train Data Columns: 1244\n",
      "Label Column:       FLAG\n",
      "Problem Type:       multiclass\n",
      "Preprocessing data ...\n",
      "Train Data Class Count: 10\n",
      "Using Feature Generators to preprocess the data ...\n",
      "Train Data Class Count: 10\n",
      "Using Feature Generators to preprocess the data ...\n",
      "Fitting AutoMLPipelineFeatureGenerator...\n",
      "\tAvailable Memory:                    109818.28 MB\n",
      "\tTrain Data (Original)  Memory Usage: 215.50 MB (0.2% of available memory)\n",
      "Fitting AutoMLPipelineFeatureGenerator...\n",
      "\tAvailable Memory:                    109818.28 MB\n",
      "\tTrain Data (Original)  Memory Usage: 215.50 MB (0.2% of available memory)\n",
      "\tInferring data type of each feature based on column values. Set feature_metadata_in to manually specify special dtypes of the features.\n",
      "\tInferring data type of each feature based on column values. Set feature_metadata_in to manually specify special dtypes of the features.\n",
      "\tStage 1 Generators:\n",
      "\tStage 1 Generators:\n",
      "\t\tFitting AsTypeFeatureGenerator...\n",
      "\t\tFitting AsTypeFeatureGenerator...\n",
      "\t\t\tNote: Converting 9 features to boolean dtype as they only contain 2 unique values.\n",
      "\t\t\tOriginal Features (exact raw dtype, raw dtype):\n",
      "\t\t\tNote: Converting 9 features to boolean dtype as they only contain 2 unique values.\n",
      "\t\t\tOriginal Features (exact raw dtype, raw dtype):\n",
      "\t\t\t\t('float32', 'float') : 1234 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int8', 'int')      :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', []) : 1234 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])   :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.3s = Fit runtime\n",
      "\t\t\t\t('float32', 'float') : 1234 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int8', 'int')      :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', []) : 1234 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])   :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.3s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 2 Generators:\n",
      "\t\tFitting FillNaFeatureGenerator...\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 2 Generators:\n",
      "\t\tFitting FillNaFeatureGenerator...\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.1s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.1s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 3 Generators:\n",
      "\t\tFitting IdentityFeatureGenerator...\n",
      "\tStage 3 Generators:\n",
      "\t\tFitting IdentityFeatureGenerator...\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.1s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\t\tSkipping CategoryFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping DatetimeFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping TextSpecialFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping TextNgramFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping IdentityFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping IsNanFeatureGenerator: No input feature with required dtypes.\n",
      "\tStage 4 Generators:\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.1s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\t\tSkipping CategoryFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping DatetimeFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping TextSpecialFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping TextNgramFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping IdentityFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping IsNanFeatureGenerator: No input feature with required dtypes.\n",
      "\tStage 4 Generators:\n",
      "\t\tFitting DropUniqueFeatureGenerator...\n",
      "\t\tFitting DropUniqueFeatureGenerator...\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.7s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.7s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 5 Generators:\n",
      "\t\tFitting DropDuplicatesFeatureGenerator...\n",
      "\tStage 5 Generators:\n",
      "\t\tFitting DropDuplicatesFeatureGenerator...\n",
      "\t\t\t35 duplicate columns removed: ['main_prov_ratio', 'AST_AUM_BAL_MAX', 'daily_unique_pages_mean', 'daily_visits_mean', 'daily_unique_pages_max', 'daily_visits_max', 'daily_visits_min', 'daily_unique_pages_std', 'daily_visits_std', 'total_page_visits', 'total_model_visits', 'total_visit_count', 'module_f582974bcc4342859d7e2f9e3be6a9ed_last_visit', 'module_d70f9f4b8952b0a2ad8879c7eb3d8813_last_visit', 'visit_days_min', 'first_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'last_visit_days', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_last_month_amt', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "\t\t\t35 duplicate columns removed: ['main_prov_ratio', 'AST_AUM_BAL_MAX', 'daily_unique_pages_mean', 'daily_visits_mean', 'daily_unique_pages_max', 'daily_visits_max', 'daily_visits_min', 'daily_unique_pages_std', 'daily_visits_std', 'total_page_visits', 'total_model_visits', 'total_visit_count', 'module_f582974bcc4342859d7e2f9e3be6a9ed_last_visit', 'module_d70f9f4b8952b0a2ad8879c7eb3d8813_last_visit', 'visit_days_min', 'first_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'last_visit_days', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_last_month_amt', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t\t\t5.2s = Fit runtime\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t\t\t5.2s = Fit runtime\n",
      "\t\t\t1209 features in original data used to generate 1209 features in processed data.\n",
      "\t\t\t1209 features in original data used to generate 1209 features in processed data.\n",
      "\tUnused Original Features (Count: 35): ['main_prov_ratio', 'AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'module_f582974bcc4342859d7e2f9e3be6a9ed_last_visit', 'module_d70f9f4b8952b0a2ad8879c7eb3d8813_last_visit', 'total_visit_count', 'visit_days_min', 'daily_visits_mean', 'daily_visits_max', 'daily_visits_min', 'daily_visits_std', 'first_visit_days', 'last_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'daily_unique_pages_mean', 'daily_unique_pages_max', 'daily_unique_pages_std', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'aps_last_month_amt', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "\t\tThese features were not used to generate any of the output features. Add a feature generator compatible with these features to utilize them.\n",
      "\t\tFeatures can also be unused if they carry very little information, such as being categorical but having almost entirely unique values or being duplicates of other features.\n",
      "\t\tThese features do not need to be present at inference time.\n",
      "\t\t('float', []) : 35 | ['main_prov_ratio', 'AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'module_f582974bcc4342859d7e2f9e3be6a9ed_last_visit', ...]\n",
      "\tTypes of features in original data (exact raw dtype, raw dtype):\n",
      "\t\t('float32', 'float') : 1199 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int8', 'int')      :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\tUnused Original Features (Count: 35): ['main_prov_ratio', 'AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'module_f582974bcc4342859d7e2f9e3be6a9ed_last_visit', 'module_d70f9f4b8952b0a2ad8879c7eb3d8813_last_visit', 'total_visit_count', 'visit_days_min', 'daily_visits_mean', 'daily_visits_max', 'daily_visits_min', 'daily_visits_std', 'first_visit_days', 'last_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'daily_unique_pages_mean', 'daily_unique_pages_max', 'daily_unique_pages_std', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'aps_last_month_amt', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "\t\tThese features were not used to generate any of the output features. Add a feature generator compatible with these features to utilize them.\n",
      "\t\tFeatures can also be unused if they carry very little information, such as being categorical but having almost entirely unique values or being duplicates of other features.\n",
      "\t\tThese features do not need to be present at inference time.\n",
      "\t\t('float', []) : 35 | ['main_prov_ratio', 'AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'module_f582974bcc4342859d7e2f9e3be6a9ed_last_visit', ...]\n",
      "\tTypes of features in original data (exact raw dtype, raw dtype):\n",
      "\t\t('float32', 'float') : 1199 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int8', 'int')      :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t('float', []) : 1199 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int', [])   :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in processed data (exact raw dtype, raw dtype):\n",
      "\t\t('float32', 'float') : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int8', 'int')      :   11 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t('float', []) : 1199 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int', [])   :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in processed data (exact raw dtype, raw dtype):\n",
      "\t\t('float32', 'float') : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int8', 'int')      :   11 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t7.3s = Fit runtime\n",
      "\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t7.3s = Fit runtime\n",
      "\t1209 features in original data used to generate 1209 features in processed data.\n",
      "\tTrain Data (Processed) Memory Usage: 209.26 MB (0.2% of available memory)\n",
      "\t1209 features in original data used to generate 1209 features in processed data.\n",
      "\tTrain Data (Processed) Memory Usage: 209.26 MB (0.2% of available memory)\n",
      "Data preprocessing and feature engineering runtime = 7.57s ...\n",
      "AutoGluon will gauge predictive performance using evaluation metric: 'macro_f1'\n",
      "\tTo change this, specify the eval_metric parameter of Predictor()\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\learner.pkl\n",
      "User-specified model hyperparameters to be fit:\n",
      "{\n",
      "\t'GBM': [{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}, {'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}, {'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}],\n",
      "\t'CAT': [{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1}, {'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2}, {'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128}],\n",
      "\t'XGB': [{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1}, {'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2}, {'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15}],\n",
      "\t'RF': [{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt'}, {'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8}],\n",
      "\t'XT': [{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2}, {'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4}],\n",
      "\t'NN_TORCH': [{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1}, {'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2}],\n",
      "\t'FASTAI': [{'epochs': 50, 'lr': 0.001}],\n",
      "}\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\utils\\data\\X.pkl\n",
      "Data preprocessing and feature engineering runtime = 7.57s ...\n",
      "AutoGluon will gauge predictive performance using evaluation metric: 'macro_f1'\n",
      "\tTo change this, specify the eval_metric parameter of Predictor()\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\learner.pkl\n",
      "User-specified model hyperparameters to be fit:\n",
      "{\n",
      "\t'GBM': [{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}, {'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}, {'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}],\n",
      "\t'CAT': [{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1}, {'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2}, {'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128}],\n",
      "\t'XGB': [{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1}, {'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2}, {'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15}],\n",
      "\t'RF': [{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt'}, {'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8}],\n",
      "\t'XT': [{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2}, {'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4}],\n",
      "\t'NN_TORCH': [{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1}, {'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2}],\n",
      "\t'FASTAI': [{'epochs': 50, 'lr': 0.001}],\n",
      "}\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\utils\\data\\X.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\utils\\data\\y.pkl\n",
      "AutoGluon will fit 3 stack levels (L1 to L3) ...\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L1: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L1: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L1: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L1: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L1: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tRandomForest_2_BAG_L1: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L1: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L1: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L1: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L1: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L1: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L1: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\utils\\data\\y.pkl\n",
      "AutoGluon will fit 3 stack levels (L1 to L3) ...\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L1: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L1: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L1: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L1: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L1: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tRandomForest_2_BAG_L1: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L1: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L1: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L1: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L1: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L1: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L1: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_2_BAG_L1: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L1: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L1: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L1: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L1 models, fit_strategy=\"sequential\" ...\n",
      "Fitting model: NeuralNetFastAI_BAG_L1 ... Training model for up to 1196.33s of the 2692.42s of remaining time.\n",
      "\tXGBoost_2_BAG_L1: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L1: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L1: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L1: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L1 models, fit_strategy=\"sequential\" ...\n",
      "Fitting model: NeuralNetFastAI_BAG_L1 ... Training model for up to 1196.33s of the 2692.42s of remaining time.\n",
      "\tFitting NeuralNetFastAI_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting NeuralNetFastAI_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L1 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L1 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_BAG_L1 ... Training model for up to 1194.56s of the 2690.64s of remaining time.\n",
      "Fitting model: LightGBM_BAG_L1 ... Training model for up to 1194.56s of the 2690.64s of remaining time.\n",
      "\tFitting LightGBM_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.742817\tvalid_set's macro_f1: 0.580088\n",
      "[100]\tvalid_set's multi_logloss: 0.716264\tvalid_set's macro_f1: 0.582481\n",
      "[100]\tvalid_set's multi_logloss: 0.716264\tvalid_set's macro_f1: 0.582481\n",
      "[150]\tvalid_set's multi_logloss: 0.719503\tvalid_set's macro_f1: 0.582178\n",
      "[150]\tvalid_set's multi_logloss: 0.719503\tvalid_set's macro_f1: 0.582178\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.756223\tvalid_set's macro_f1: 0.592406\n",
      "[100]\tvalid_set's multi_logloss: 0.731104\tvalid_set's macro_f1: 0.597439\n",
      "[100]\tvalid_set's multi_logloss: 0.731104\tvalid_set's macro_f1: 0.597439\n",
      "[150]\tvalid_set's multi_logloss: 0.733695\tvalid_set's macro_f1: 0.593303\n",
      "[150]\tvalid_set's multi_logloss: 0.733695\tvalid_set's macro_f1: 0.593303\n",
      "[200]\tvalid_set's multi_logloss: 0.74279\tvalid_set's macro_f1: 0.597014\n",
      "[200]\tvalid_set's multi_logloss: 0.74279\tvalid_set's macro_f1: 0.597014\n",
      "[250]\tvalid_set's multi_logloss: 0.752057\tvalid_set's macro_f1: 0.596436\n",
      "[250]\tvalid_set's multi_logloss: 0.752057\tvalid_set's macro_f1: 0.596436\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.744963\tvalid_set's macro_f1: 0.589088\n",
      "[100]\tvalid_set's multi_logloss: 0.718254\tvalid_set's macro_f1: 0.592259\n",
      "[100]\tvalid_set's multi_logloss: 0.718254\tvalid_set's macro_f1: 0.592259\n",
      "[150]\tvalid_set's multi_logloss: 0.722594\tvalid_set's macro_f1: 0.592008\n",
      "[150]\tvalid_set's multi_logloss: 0.722594\tvalid_set's macro_f1: 0.592008\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.734726\tvalid_set's macro_f1: 0.592947\n",
      "[100]\tvalid_set's multi_logloss: 0.710486\tvalid_set's macro_f1: 0.600467\n",
      "[100]\tvalid_set's multi_logloss: 0.710486\tvalid_set's macro_f1: 0.600467\n",
      "[150]\tvalid_set's multi_logloss: 0.715398\tvalid_set's macro_f1: 0.597596\n",
      "[150]\tvalid_set's multi_logloss: 0.715398\tvalid_set's macro_f1: 0.597596\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.733462\tvalid_set's macro_f1: 0.589301\n",
      "[100]\tvalid_set's multi_logloss: 0.705588\tvalid_set's macro_f1: 0.59964\n",
      "[100]\tvalid_set's multi_logloss: 0.705588\tvalid_set's macro_f1: 0.59964\n",
      "[150]\tvalid_set's multi_logloss: 0.708744\tvalid_set's macro_f1: 0.596155\n",
      "[150]\tvalid_set's multi_logloss: 0.708744\tvalid_set's macro_f1: 0.596155\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.740611\tvalid_set's macro_f1: 0.587254\n",
      "[100]\tvalid_set's multi_logloss: 0.713666\tvalid_set's macro_f1: 0.586377\n",
      "[100]\tvalid_set's multi_logloss: 0.713666\tvalid_set's macro_f1: 0.586377\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.732003\tvalid_set's macro_f1: 0.601873\n",
      "[100]\tvalid_set's multi_logloss: 0.706636\tvalid_set's macro_f1: 0.607347\n",
      "[100]\tvalid_set's multi_logloss: 0.706636\tvalid_set's macro_f1: 0.607347\n",
      "[150]\tvalid_set's multi_logloss: 0.710041\tvalid_set's macro_f1: 0.608469\n",
      "[150]\tvalid_set's multi_logloss: 0.710041\tvalid_set's macro_f1: 0.608469\n",
      "[200]\tvalid_set's multi_logloss: 0.717984\tvalid_set's macro_f1: 0.606575\n",
      "[200]\tvalid_set's multi_logloss: 0.717984\tvalid_set's macro_f1: 0.606575\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.744964\tvalid_set's macro_f1: 0.577096\n",
      "[100]\tvalid_set's multi_logloss: 0.718906\tvalid_set's macro_f1: 0.574545\n",
      "[100]\tvalid_set's multi_logloss: 0.718906\tvalid_set's macro_f1: 0.574545\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.733747\tvalid_set's macro_f1: 0.594504\n",
      "[100]\tvalid_set's multi_logloss: 0.706377\tvalid_set's macro_f1: 0.5977\n",
      "[100]\tvalid_set's multi_logloss: 0.706377\tvalid_set's macro_f1: 0.5977\n",
      "[150]\tvalid_set's multi_logloss: 0.70835\tvalid_set's macro_f1: 0.603876\n",
      "[150]\tvalid_set's multi_logloss: 0.70835\tvalid_set's macro_f1: 0.603876\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.7552\tvalid_set's macro_f1: 0.5927\n",
      "[100]\tvalid_set's multi_logloss: 0.730641\tvalid_set's macro_f1: 0.59352\n",
      "[100]\tvalid_set's multi_logloss: 0.730641\tvalid_set's macro_f1: 0.59352\n",
      "[150]\tvalid_set's multi_logloss: 0.734509\tvalid_set's macro_f1: 0.595515\n",
      "[150]\tvalid_set's multi_logloss: 0.734509\tvalid_set's macro_f1: 0.595515\n",
      "[200]\tvalid_set's multi_logloss: 0.74113\tvalid_set's macro_f1: 0.596275\n",
      "[200]\tvalid_set's multi_logloss: 0.74113\tvalid_set's macro_f1: 0.596275\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\model.pkl\n",
      "\t0.5957\t = Validation score   (macro_f1)\n",
      "\t301.57s\t = Training   runtime\n",
      "\t1.38s\t = Validation runtime\n",
      "\t6613.3\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\model.pkl\n",
      "\t0.5957\t = Validation score   (macro_f1)\n",
      "\t301.57s\t = Training   runtime\n",
      "\t1.38s\t = Validation runtime\n",
      "\t6613.3\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_2_BAG_L1 ... Training model for up to 889.06s of the 2385.14s of remaining time.\n",
      "Fitting model: LightGBM_2_BAG_L1 ... Training model for up to 889.06s of the 2385.14s of remaining time.\n",
      "\tFitting LightGBM_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.796524\tvalid_set's macro_f1: 0.57853\n",
      "[100]\tvalid_set's multi_logloss: 0.724259\tvalid_set's macro_f1: 0.584676\n",
      "[100]\tvalid_set's multi_logloss: 0.724259\tvalid_set's macro_f1: 0.584676\n",
      "[150]\tvalid_set's multi_logloss: 0.716549\tvalid_set's macro_f1: 0.583587\n",
      "[150]\tvalid_set's multi_logloss: 0.716549\tvalid_set's macro_f1: 0.583587\n",
      "[200]\tvalid_set's multi_logloss: 0.72116\tvalid_set's macro_f1: 0.583602\n",
      "[200]\tvalid_set's multi_logloss: 0.72116\tvalid_set's macro_f1: 0.583602\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.806798\tvalid_set's macro_f1: 0.586111\n",
      "[100]\tvalid_set's multi_logloss: 0.737372\tvalid_set's macro_f1: 0.594458\n",
      "[100]\tvalid_set's multi_logloss: 0.737372\tvalid_set's macro_f1: 0.594458\n",
      "[150]\tvalid_set's multi_logloss: 0.731044\tvalid_set's macro_f1: 0.598393\n",
      "[150]\tvalid_set's multi_logloss: 0.731044\tvalid_set's macro_f1: 0.598393\n",
      "[200]\tvalid_set's multi_logloss: 0.73622\tvalid_set's macro_f1: 0.600183\n",
      "[200]\tvalid_set's multi_logloss: 0.73622\tvalid_set's macro_f1: 0.600183\n",
      "[250]\tvalid_set's multi_logloss: 0.745343\tvalid_set's macro_f1: 0.598751\n",
      "[250]\tvalid_set's multi_logloss: 0.745343\tvalid_set's macro_f1: 0.598751\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 278. Best iteration is:\n",
      "\t[267]\tvalid_set's multi_logloss: 0.74884\tvalid_set's macro_f1: 0.603963\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.797995\tvalid_set's macro_f1: 0.580741\n",
      "[100]\tvalid_set's multi_logloss: 0.725866\tvalid_set's macro_f1: 0.584348\n",
      "[100]\tvalid_set's multi_logloss: 0.725866\tvalid_set's macro_f1: 0.584348\n",
      "[150]\tvalid_set's multi_logloss: 0.718852\tvalid_set's macro_f1: 0.590881\n",
      "[150]\tvalid_set's multi_logloss: 0.718852\tvalid_set's macro_f1: 0.590881\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.789036\tvalid_set's macro_f1: 0.586167\n",
      "[100]\tvalid_set's multi_logloss: 0.718035\tvalid_set's macro_f1: 0.58851\n",
      "[100]\tvalid_set's multi_logloss: 0.718035\tvalid_set's macro_f1: 0.58851\n",
      "[150]\tvalid_set's multi_logloss: 0.710631\tvalid_set's macro_f1: 0.591905\n",
      "[150]\tvalid_set's multi_logloss: 0.710631\tvalid_set's macro_f1: 0.591905\n",
      "[200]\tvalid_set's multi_logloss: 0.715469\tvalid_set's macro_f1: 0.592047\n",
      "[200]\tvalid_set's multi_logloss: 0.715469\tvalid_set's macro_f1: 0.592047\n",
      "[250]\tvalid_set's multi_logloss: 0.724848\tvalid_set's macro_f1: 0.598822\n",
      "[250]\tvalid_set's multi_logloss: 0.724848\tvalid_set's macro_f1: 0.598822\n",
      "[300]\tvalid_set's multi_logloss: 0.734834\tvalid_set's macro_f1: 0.595131\n",
      "[300]\tvalid_set's multi_logloss: 0.734834\tvalid_set's macro_f1: 0.595131\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 305. Best iteration is:\n",
      "\t[251]\tvalid_set's multi_logloss: 0.725059\tvalid_set's macro_f1: 0.599855\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.791543\tvalid_set's macro_f1: 0.589984\n",
      "[100]\tvalid_set's multi_logloss: 0.719219\tvalid_set's macro_f1: 0.593439\n",
      "[100]\tvalid_set's multi_logloss: 0.719219\tvalid_set's macro_f1: 0.593439\n",
      "[150]\tvalid_set's multi_logloss: 0.71082\tvalid_set's macro_f1: 0.593693\n",
      "[150]\tvalid_set's multi_logloss: 0.71082\tvalid_set's macro_f1: 0.593693\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.795063\tvalid_set's macro_f1: 0.575176\n",
      "[100]\tvalid_set's multi_logloss: 0.721184\tvalid_set's macro_f1: 0.578236\n",
      "[100]\tvalid_set's multi_logloss: 0.721184\tvalid_set's macro_f1: 0.578236\n",
      "[150]\tvalid_set's multi_logloss: 0.713037\tvalid_set's macro_f1: 0.578047\n",
      "[150]\tvalid_set's multi_logloss: 0.713037\tvalid_set's macro_f1: 0.578047\n",
      "[200]\tvalid_set's multi_logloss: 0.717579\tvalid_set's macro_f1: 0.581093\n",
      "[200]\tvalid_set's multi_logloss: 0.717579\tvalid_set's macro_f1: 0.581093\n",
      "[250]\tvalid_set's multi_logloss: 0.725315\tvalid_set's macro_f1: 0.579922\n",
      "[250]\tvalid_set's multi_logloss: 0.725315\tvalid_set's macro_f1: 0.579922\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.787094\tvalid_set's macro_f1: 0.59289\n",
      "[100]\tvalid_set's multi_logloss: 0.716367\tvalid_set's macro_f1: 0.602568\n",
      "[100]\tvalid_set's multi_logloss: 0.716367\tvalid_set's macro_f1: 0.602568\n",
      "[150]\tvalid_set's multi_logloss: 0.710174\tvalid_set's macro_f1: 0.6025\n",
      "[150]\tvalid_set's multi_logloss: 0.710174\tvalid_set's macro_f1: 0.6025\n",
      "[200]\tvalid_set's multi_logloss: 0.71594\tvalid_set's macro_f1: 0.604073\n",
      "[200]\tvalid_set's multi_logloss: 0.71594\tvalid_set's macro_f1: 0.604073\n",
      "[250]\tvalid_set's multi_logloss: 0.725399\tvalid_set's macro_f1: 0.6027\n",
      "[250]\tvalid_set's multi_logloss: 0.725399\tvalid_set's macro_f1: 0.6027\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.80053\tvalid_set's macro_f1: 0.573353\n",
      "[100]\tvalid_set's multi_logloss: 0.729241\tvalid_set's macro_f1: 0.585615\n",
      "[100]\tvalid_set's multi_logloss: 0.729241\tvalid_set's macro_f1: 0.585615\n",
      "[150]\tvalid_set's multi_logloss: 0.721464\tvalid_set's macro_f1: 0.584161\n",
      "[150]\tvalid_set's multi_logloss: 0.721464\tvalid_set's macro_f1: 0.584161\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.787844\tvalid_set's macro_f1: 0.59286\n",
      "[100]\tvalid_set's multi_logloss: 0.714818\tvalid_set's macro_f1: 0.600109\n",
      "[100]\tvalid_set's multi_logloss: 0.714818\tvalid_set's macro_f1: 0.600109\n",
      "[150]\tvalid_set's multi_logloss: 0.705708\tvalid_set's macro_f1: 0.603077\n",
      "[150]\tvalid_set's multi_logloss: 0.705708\tvalid_set's macro_f1: 0.603077\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.808237\tvalid_set's macro_f1: 0.575232\n",
      "[100]\tvalid_set's multi_logloss: 0.738482\tvalid_set's macro_f1: 0.587242\n",
      "[100]\tvalid_set's multi_logloss: 0.738482\tvalid_set's macro_f1: 0.587242\n",
      "[150]\tvalid_set's multi_logloss: 0.730592\tvalid_set's macro_f1: 0.598666\n",
      "[150]\tvalid_set's multi_logloss: 0.730592\tvalid_set's macro_f1: 0.598666\n",
      "[200]\tvalid_set's multi_logloss: 0.734982\tvalid_set's macro_f1: 0.600132\n",
      "[200]\tvalid_set's multi_logloss: 0.734982\tvalid_set's macro_f1: 0.600132\n",
      "[250]\tvalid_set's multi_logloss: 0.744006\tvalid_set's macro_f1: 0.599235\n",
      "[250]\tvalid_set's multi_logloss: 0.744006\tvalid_set's macro_f1: 0.599235\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "\t0.5953\t = Validation score   (macro_f1)\n",
      "\t633.74s\t = Training   runtime\n",
      "\t1.61s\t = Validation runtime\n",
      "\t5662.6\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "\t0.5953\t = Validation score   (macro_f1)\n",
      "\t633.74s\t = Training   runtime\n",
      "\t1.61s\t = Validation runtime\n",
      "\t5662.6\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_3_BAG_L1 ... Training model for up to 250.28s of the 1746.37s of remaining time.\n",
      "Fitting model: LightGBM_3_BAG_L1 ... Training model for up to 250.28s of the 1746.37s of remaining time.\n",
      "\tFitting LightGBM_3_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_3_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.888647\tvalid_set's macro_f1: 0.577949\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 91. Best iteration is:\n",
      "\t[77]\tvalid_set's multi_logloss: 0.793113\tvalid_set's macro_f1: 0.583216\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.901438\tvalid_set's macro_f1: 0.575103\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 93. Best iteration is:\n",
      "\t[84]\tvalid_set's multi_logloss: 0.793586\tvalid_set's macro_f1: 0.583941\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.892998\tvalid_set's macro_f1: 0.575148\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 95. Best iteration is:\n",
      "\t[95]\tvalid_set's multi_logloss: 0.76458\tvalid_set's macro_f1: 0.586825\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.885814\tvalid_set's macro_f1: 0.5785\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 98. Best iteration is:\n",
      "\t[97]\tvalid_set's multi_logloss: 0.754988\tvalid_set's macro_f1: 0.589909\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.882828\tvalid_set's macro_f1: 0.579375\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 101. Best iteration is:\n",
      "\t[91]\tvalid_set's multi_logloss: 0.759691\tvalid_set's macro_f1: 0.590574\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[100]\tvalid_set's multi_logloss: 0.747789\tvalid_set's macro_f1: 0.590535\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.890651\tvalid_set's macro_f1: 0.568652\n",
      "[100]\tvalid_set's multi_logloss: 0.755625\tvalid_set's macro_f1: 0.578132\n",
      "[100]\tvalid_set's multi_logloss: 0.755625\tvalid_set's macro_f1: 0.578132\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 105. Best iteration is:\n",
      "\t[101]\tvalid_set's multi_logloss: 0.754363\tvalid_set's macro_f1: 0.578387\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.880486\tvalid_set's macro_f1: 0.584897\n",
      "[100]\tvalid_set's multi_logloss: 0.746538\tvalid_set's macro_f1: 0.6009\n",
      "[100]\tvalid_set's multi_logloss: 0.746538\tvalid_set's macro_f1: 0.6009\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 112. Best iteration is:\n",
      "\t[100]\tvalid_set's multi_logloss: 0.746538\tvalid_set's macro_f1: 0.6009\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.895016\tvalid_set's macro_f1: 0.569992\n",
      "[100]\tvalid_set's multi_logloss: 0.759437\tvalid_set's macro_f1: 0.580489\n",
      "[100]\tvalid_set's multi_logloss: 0.759437\tvalid_set's macro_f1: 0.580489\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 119. Best iteration is:\n",
      "\t[118]\tvalid_set's multi_logloss: 0.742127\tvalid_set's macro_f1: 0.580987\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.883086\tvalid_set's macro_f1: 0.586392\n",
      "[100]\tvalid_set's multi_logloss: 0.74774\tvalid_set's macro_f1: 0.595775\n",
      "[100]\tvalid_set's multi_logloss: 0.74774\tvalid_set's macro_f1: 0.595775\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 132. Best iteration is:\n",
      "\t[119]\tvalid_set's multi_logloss: 0.729541\tvalid_set's macro_f1: 0.596982\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.899593\tvalid_set's macro_f1: 0.574299\n",
      "[100]\tvalid_set's multi_logloss: 0.769362\tvalid_set's macro_f1: 0.591145\n",
      "[100]\tvalid_set's multi_logloss: 0.769362\tvalid_set's macro_f1: 0.591145\n",
      "[150]\tvalid_set's multi_logloss: 0.738417\tvalid_set's macro_f1: 0.592047\n",
      "[150]\tvalid_set's multi_logloss: 0.738417\tvalid_set's macro_f1: 0.592047\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 163. Best iteration is:\n",
      "\t[160]\tvalid_set's multi_logloss: 0.73521\tvalid_set's macro_f1: 0.596011\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\model.pkl\n",
      "\t0.5914\t = Validation score   (macro_f1)\n",
      "\t238.55s\t = Training   runtime\n",
      "\t1.68s\t = Validation runtime\n",
      "\t5438.4\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\model.pkl\n",
      "\t0.5914\t = Validation score   (macro_f1)\n",
      "\t238.55s\t = Training   runtime\n",
      "\t1.68s\t = Validation runtime\n",
      "\t5438.4\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_BAG_L1 ... Training model for up to 7.18s of the 1503.27s of remaining time.\n",
      "Fitting model: RandomForest_BAG_L1 ... Training model for up to 7.18s of the 1503.27s of remaining time.\n",
      "\tFitting RandomForest_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "\tWarning: Reducing model 'n_estimators' from 300 -> 55 due to low time. Expected time usage reduced from 30.5s -> 5.9s...\n",
      "\tWarning: Reducing model 'n_estimators' from 300 -> 55 due to low time. Expected time usage reduced from 30.5s -> 5.9s...\n",
      "\t1.69s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "\t1.69s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\model.pkl\n",
      "\t0.5546\t = Validation score   (macro_f1)\n",
      "\t2.49s\t = Training   runtime\n",
      "\t3.1s\t = Validation runtime\n",
      "\t14739.9\t = Inference  throughput (rows/s | 45686 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\model.pkl\n",
      "\t0.5546\t = Validation score   (macro_f1)\n",
      "\t2.49s\t = Training   runtime\n",
      "\t3.1s\t = Validation runtime\n",
      "\t14739.9\t = Inference  throughput (rows/s | 45686 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_2_BAG_L1 ... Training model for up to 0.83s of the 1496.92s of remaining time.\n",
      "Fitting model: RandomForest_2_BAG_L1 ... Training model for up to 0.83s of the 1496.92s of remaining time.\n",
      "\tFitting RandomForest_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L1\\utils\\model_template.pkl\n",
      "\tWarning: Model has no time left to train, skipping model... (Time Left = -0.5s)\n",
      "\tTime limit exceeded... Skipping RandomForest_2_BAG_L1.\n",
      "\tWarning: Model has no time left to train, skipping model... (Time Left = -0.5s)\n",
      "\tTime limit exceeded... Skipping RandomForest_2_BAG_L1.\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_3_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L1 due to lack of time remaining.\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_3_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L2: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L2 ... Training model for up to 360.00s of the 1495.44s of remaining time.\n",
      "\tFitting WeightedEnsemble_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L2: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L2 ... Training model for up to 360.00s of the 1495.44s of remaining time.\n",
      "\tFitting WeightedEnsemble_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Ensemble size: 11\n",
      "Ensemble weights: \n",
      "[0.63636364 0.36363636 0.         0.        ]\n",
      "\t0.09s\t= Estimated out-of-fold prediction time...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L2\\utils\\oof.pkl\n",
      "Ensemble size: 11\n",
      "Ensemble weights: \n",
      "[0.63636364 0.36363636 0.         0.        ]\n",
      "\t0.09s\t= Estimated out-of-fold prediction time...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_BAG_L1': 0.636, 'LightGBM_2_BAG_L1': 0.364}\n",
      "\t0.5967\t = Validation score   (macro_f1)\n",
      "\t1.02s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t3048.5\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L2: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L2: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L2: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L2: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L2: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_BAG_L1': 0.636, 'LightGBM_2_BAG_L1': 0.364}\n",
      "\t0.5967\t = Validation score   (macro_f1)\n",
      "\t1.02s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t3048.5\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L2: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L2: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L2: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L2: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L2: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tRandomForest_2_BAG_L2: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L2: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L2: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L2: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L2: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L2: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L2: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_2_BAG_L2: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L2: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L2: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L2: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L2 models, fit_strategy=\"sequential\" ...\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "\tRandomForest_2_BAG_L2: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L2: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L2: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L2: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L2: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L2: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L2: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_2_BAG_L2: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L2: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L2: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L2: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L2 models, fit_strategy=\"sequential\" ...\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Fitting model: NeuralNetFastAI_BAG_L2 ... Training model for up to 995.99s of the 1494.30s of remaining time.\n",
      "Fitting model: NeuralNetFastAI_BAG_L2 ... Training model for up to 995.99s of the 1494.30s of remaining time.\n",
      "\tFitting NeuralNetFastAI_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting NeuralNetFastAI_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L2 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L2 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_BAG_L2 ... Training model for up to 993.86s of the 1492.17s of remaining time.\n",
      "Fitting model: LightGBM_BAG_L2 ... Training model for up to 993.86s of the 1492.17s of remaining time.\n",
      "\tFitting LightGBM_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.728625\tvalid_set's macro_f1: 0.602502\n",
      "[100]\tvalid_set's multi_logloss: 0.719306\tvalid_set's macro_f1: 0.602127\n",
      "[100]\tvalid_set's multi_logloss: 0.719306\tvalid_set's macro_f1: 0.602127\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.730875\tvalid_set's macro_f1: 0.604529\n",
      "[100]\tvalid_set's multi_logloss: 0.719669\tvalid_set's macro_f1: 0.600214\n",
      "[100]\tvalid_set's multi_logloss: 0.719669\tvalid_set's macro_f1: 0.600214\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.737222\tvalid_set's macro_f1: 0.596526\n",
      "[100]\tvalid_set's multi_logloss: 0.729331\tvalid_set's macro_f1: 0.593109\n",
      "[100]\tvalid_set's multi_logloss: 0.729331\tvalid_set's macro_f1: 0.593109\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.718086\tvalid_set's macro_f1: 0.607937\n",
      "[100]\tvalid_set's multi_logloss: 0.706289\tvalid_set's macro_f1: 0.604855\n",
      "[100]\tvalid_set's multi_logloss: 0.706289\tvalid_set's macro_f1: 0.604855\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.721706\tvalid_set's macro_f1: 0.597621\n",
      "[100]\tvalid_set's multi_logloss: 0.713077\tvalid_set's macro_f1: 0.592719\n",
      "[100]\tvalid_set's multi_logloss: 0.713077\tvalid_set's macro_f1: 0.592719\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.723203\tvalid_set's macro_f1: 0.60325\n",
      "[100]\tvalid_set's multi_logloss: 0.71309\tvalid_set's macro_f1: 0.600622\n",
      "[100]\tvalid_set's multi_logloss: 0.71309\tvalid_set's macro_f1: 0.600622\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.739938\tvalid_set's macro_f1: 0.595519\n",
      "[100]\tvalid_set's multi_logloss: 0.733564\tvalid_set's macro_f1: 0.589256\n",
      "[100]\tvalid_set's multi_logloss: 0.733564\tvalid_set's macro_f1: 0.589256\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.714303\tvalid_set's macro_f1: 0.601357\n",
      "[100]\tvalid_set's multi_logloss: 0.702937\tvalid_set's macro_f1: 0.599345\n",
      "[100]\tvalid_set's multi_logloss: 0.702937\tvalid_set's macro_f1: 0.599345\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.731176\tvalid_set's macro_f1: 0.599207\n",
      "[100]\tvalid_set's multi_logloss: 0.722127\tvalid_set's macro_f1: 0.595756\n",
      "[100]\tvalid_set's multi_logloss: 0.722127\tvalid_set's macro_f1: 0.595756\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.725826\tvalid_set's macro_f1: 0.600063\n",
      "[100]\tvalid_set's multi_logloss: 0.715905\tvalid_set's macro_f1: 0.597949\n",
      "[100]\tvalid_set's multi_logloss: 0.715905\tvalid_set's macro_f1: 0.597949\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\model.pkl\n",
      "\t0.6017\t = Validation score   (macro_f1)\n",
      "\t205.11s\t = Training   runtime\n",
      "\t1.29s\t = Validation runtime\n",
      "\t1387.7\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\model.pkl\n",
      "\t0.6017\t = Validation score   (macro_f1)\n",
      "\t205.11s\t = Training   runtime\n",
      "\t1.29s\t = Validation runtime\n",
      "\t1387.7\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_2_BAG_L2 ... Training model for up to 785.23s of the 1283.53s of remaining time.\n",
      "Fitting model: LightGBM_2_BAG_L2 ... Training model for up to 785.23s of the 1283.53s of remaining time.\n",
      "\tFitting LightGBM_2_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_2_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.778538\tvalid_set's macro_f1: 0.598917\n",
      "[100]\tvalid_set's multi_logloss: 0.72494\tvalid_set's macro_f1: 0.59778\n",
      "[100]\tvalid_set's multi_logloss: 0.72494\tvalid_set's macro_f1: 0.59778\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.77852\tvalid_set's macro_f1: 0.602396\n",
      "[100]\tvalid_set's multi_logloss: 0.72457\tvalid_set's macro_f1: 0.594556\n",
      "[100]\tvalid_set's multi_logloss: 0.72457\tvalid_set's macro_f1: 0.594556\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.785727\tvalid_set's macro_f1: 0.589274\n",
      "[100]\tvalid_set's multi_logloss: 0.73715\tvalid_set's macro_f1: 0.588925\n",
      "[100]\tvalid_set's multi_logloss: 0.73715\tvalid_set's macro_f1: 0.588925\n",
      "[150]\tvalid_set's multi_logloss: 0.739944\tvalid_set's macro_f1: 0.589271\n",
      "[150]\tvalid_set's multi_logloss: 0.739944\tvalid_set's macro_f1: 0.589271\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.769291\tvalid_set's macro_f1: 0.590648\n",
      "[100]\tvalid_set's multi_logloss: 0.714403\tvalid_set's macro_f1: 0.59151\n",
      "[100]\tvalid_set's multi_logloss: 0.714403\tvalid_set's macro_f1: 0.59151\n",
      "[150]\tvalid_set's multi_logloss: 0.714928\tvalid_set's macro_f1: 0.591153\n",
      "[150]\tvalid_set's multi_logloss: 0.714928\tvalid_set's macro_f1: 0.591153\n",
      "[200]\tvalid_set's multi_logloss: 0.724791\tvalid_set's macro_f1: 0.592846\n",
      "[200]\tvalid_set's multi_logloss: 0.724791\tvalid_set's macro_f1: 0.592846\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.772638\tvalid_set's macro_f1: 0.592871\n",
      "[100]\tvalid_set's multi_logloss: 0.71993\tvalid_set's macro_f1: 0.589886\n",
      "[100]\tvalid_set's multi_logloss: 0.71993\tvalid_set's macro_f1: 0.589886\n",
      "[150]\tvalid_set's multi_logloss: 0.720523\tvalid_set's macro_f1: 0.588528\n",
      "[150]\tvalid_set's multi_logloss: 0.720523\tvalid_set's macro_f1: 0.588528\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.772643\tvalid_set's macro_f1: 0.59696\n",
      "[100]\tvalid_set's multi_logloss: 0.718703\tvalid_set's macro_f1: 0.596644\n",
      "[100]\tvalid_set's multi_logloss: 0.718703\tvalid_set's macro_f1: 0.596644\n",
      "[150]\tvalid_set's multi_logloss: 0.719912\tvalid_set's macro_f1: 0.594906\n",
      "[150]\tvalid_set's multi_logloss: 0.719912\tvalid_set's macro_f1: 0.594906\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.786118\tvalid_set's macro_f1: 0.586485\n",
      "[100]\tvalid_set's multi_logloss: 0.736776\tvalid_set's macro_f1: 0.587062\n",
      "[100]\tvalid_set's multi_logloss: 0.736776\tvalid_set's macro_f1: 0.587062\n",
      "[150]\tvalid_set's multi_logloss: 0.739856\tvalid_set's macro_f1: 0.586226\n",
      "[150]\tvalid_set's multi_logloss: 0.739856\tvalid_set's macro_f1: 0.586226\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.766298\tvalid_set's macro_f1: 0.604077\n",
      "[100]\tvalid_set's multi_logloss: 0.711398\tvalid_set's macro_f1: 0.605471\n",
      "[100]\tvalid_set's multi_logloss: 0.711398\tvalid_set's macro_f1: 0.605471\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.781805\tvalid_set's macro_f1: 0.594382\n",
      "[100]\tvalid_set's multi_logloss: 0.729454\tvalid_set's macro_f1: 0.587741\n",
      "[100]\tvalid_set's multi_logloss: 0.729454\tvalid_set's macro_f1: 0.587741\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.776865\tvalid_set's macro_f1: 0.59013\n",
      "[100]\tvalid_set's multi_logloss: 0.725166\tvalid_set's macro_f1: 0.589938\n",
      "[100]\tvalid_set's multi_logloss: 0.725166\tvalid_set's macro_f1: 0.589938\n",
      "[150]\tvalid_set's multi_logloss: 0.725778\tvalid_set's macro_f1: 0.594046\n",
      "[150]\tvalid_set's multi_logloss: 0.725778\tvalid_set's macro_f1: 0.594046\n",
      "[200]\tvalid_set's multi_logloss: 0.736294\tvalid_set's macro_f1: 0.593528\n",
      "[200]\tvalid_set's multi_logloss: 0.736294\tvalid_set's macro_f1: 0.593528\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\model.pkl\n",
      "\t0.5965\t = Validation score   (macro_f1)\n",
      "\t449.19s\t = Training   runtime\n",
      "\t1.5s\t = Validation runtime\n",
      "\t1344.4\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\model.pkl\n",
      "\t0.5965\t = Validation score   (macro_f1)\n",
      "\t449.19s\t = Training   runtime\n",
      "\t1.5s\t = Validation runtime\n",
      "\t1344.4\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_3_BAG_L2 ... Training model for up to 331.82s of the 830.12s of remaining time.\n",
      "Fitting model: LightGBM_3_BAG_L2 ... Training model for up to 331.82s of the 830.12s of remaining time.\n",
      "\tFitting LightGBM_3_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_3_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.855346\tvalid_set's macro_f1: 0.596833\n",
      "[100]\tvalid_set's multi_logloss: 0.741556\tvalid_set's macro_f1: 0.599753\n",
      "[100]\tvalid_set's multi_logloss: 0.741556\tvalid_set's macro_f1: 0.599753\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 115. Best iteration is:\n",
      "\t[99]\tvalid_set's multi_logloss: 0.74238\tvalid_set's macro_f1: 0.600178\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.859087\tvalid_set's macro_f1: 0.594409\n",
      "[100]\tvalid_set's multi_logloss: 0.744546\tvalid_set's macro_f1: 0.595024\n",
      "[100]\tvalid_set's multi_logloss: 0.744546\tvalid_set's macro_f1: 0.595024\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 117. Best iteration is:\n",
      "\t[66]\tvalid_set's multi_logloss: 0.799631\tvalid_set's macro_f1: 0.599924\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.862973\tvalid_set's macro_f1: 0.58312\n",
      "[100]\tvalid_set's multi_logloss: 0.75305\tvalid_set's macro_f1: 0.590127\n",
      "[100]\tvalid_set's multi_logloss: 0.75305\tvalid_set's macro_f1: 0.590127\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 121. Best iteration is:\n",
      "\t[82]\tvalid_set's multi_logloss: 0.773077\tvalid_set's macro_f1: 0.59085\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.85018\tvalid_set's macro_f1: 0.593087\n",
      "[100]\tvalid_set's multi_logloss: 0.734076\tvalid_set's macro_f1: 0.598743\n",
      "[100]\tvalid_set's multi_logloss: 0.734076\tvalid_set's macro_f1: 0.598743\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 125. Best iteration is:\n",
      "\t[92]\tvalid_set's multi_logloss: 0.742265\tvalid_set's macro_f1: 0.59966\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.849903\tvalid_set's macro_f1: 0.583869\n",
      "[100]\tvalid_set's multi_logloss: 0.736041\tvalid_set's macro_f1: 0.585949\n",
      "[100]\tvalid_set's multi_logloss: 0.736041\tvalid_set's macro_f1: 0.585949\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 129. Best iteration is:\n",
      "\t[101]\tvalid_set's multi_logloss: 0.735155\tvalid_set's macro_f1: 0.589973\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.851034\tvalid_set's macro_f1: 0.594311\n",
      "[100]\tvalid_set's multi_logloss: 0.73687\tvalid_set's macro_f1: 0.594749\n",
      "[100]\tvalid_set's multi_logloss: 0.73687\tvalid_set's macro_f1: 0.594749\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 136. Best iteration is:\n",
      "\t[82]\tvalid_set's multi_logloss: 0.758011\tvalid_set's macro_f1: 0.598585\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.862179\tvalid_set's macro_f1: 0.586963\n",
      "[100]\tvalid_set's multi_logloss: 0.750525\tvalid_set's macro_f1: 0.588478\n",
      "[100]\tvalid_set's multi_logloss: 0.750525\tvalid_set's macro_f1: 0.588478\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 144. Best iteration is:\n",
      "\t[82]\tvalid_set's multi_logloss: 0.770585\tvalid_set's macro_f1: 0.589174\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.846811\tvalid_set's macro_f1: 0.598131\n",
      "[100]\tvalid_set's multi_logloss: 0.729903\tvalid_set's macro_f1: 0.604562\n",
      "[100]\tvalid_set's multi_logloss: 0.729903\tvalid_set's macro_f1: 0.604562\n",
      "[150]\tvalid_set's multi_logloss: 0.707061\tvalid_set's macro_f1: 0.604155\n",
      "[150]\tvalid_set's multi_logloss: 0.707061\tvalid_set's macro_f1: 0.604155\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 154. Best iteration is:\n",
      "\t[94]\tvalid_set's multi_logloss: 0.735824\tvalid_set's macro_f1: 0.60551\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.860283\tvalid_set's macro_f1: 0.583674\n",
      "[100]\tvalid_set's multi_logloss: 0.746791\tvalid_set's macro_f1: 0.588403\n",
      "[100]\tvalid_set's multi_logloss: 0.746791\tvalid_set's macro_f1: 0.588403\n",
      "[150]\tvalid_set's multi_logloss: 0.725785\tvalid_set's macro_f1: 0.588176\n",
      "[150]\tvalid_set's multi_logloss: 0.725785\tvalid_set's macro_f1: 0.588176\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 173. Best iteration is:\n",
      "\t[164]\tvalid_set's multi_logloss: 0.724191\tvalid_set's macro_f1: 0.588925\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.853994\tvalid_set's macro_f1: 0.592408\n",
      "[100]\tvalid_set's multi_logloss: 0.740933\tvalid_set's macro_f1: 0.596847\n",
      "[100]\tvalid_set's multi_logloss: 0.740933\tvalid_set's macro_f1: 0.596847\n",
      "[150]\tvalid_set's multi_logloss: 0.719872\tvalid_set's macro_f1: 0.597526\n",
      "[150]\tvalid_set's multi_logloss: 0.719872\tvalid_set's macro_f1: 0.597526\n",
      "[200]\tvalid_set's multi_logloss: 0.717303\tvalid_set's macro_f1: 0.595606\n",
      "[200]\tvalid_set's multi_logloss: 0.717303\tvalid_set's macro_f1: 0.595606\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 210. Best iteration is:\n",
      "\t[154]\tvalid_set's multi_logloss: 0.719125\tvalid_set's macro_f1: 0.597794\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\model.pkl\n",
      "\t0.5954\t = Validation score   (macro_f1)\n",
      "\t317.06s\t = Training   runtime\n",
      "\t1.75s\t = Validation runtime\n",
      "\t1297.3\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\model.pkl\n",
      "\t0.5954\t = Validation score   (macro_f1)\n",
      "\t317.06s\t = Training   runtime\n",
      "\t1.75s\t = Validation runtime\n",
      "\t1297.3\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_BAG_L2 ... Training model for up to 10.04s of the 508.35s of remaining time.\n",
      "Fitting model: RandomForest_BAG_L2 ... Training model for up to 10.04s of the 508.35s of remaining time.\n",
      "\tFitting RandomForest_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\model_template.pkl\n",
      "\tWarning: Reducing model 'n_estimators' from 300 -> 79 due to low time. Expected time usage reduced from 31.8s -> 8.7s...\n",
      "\tWarning: Reducing model 'n_estimators' from 300 -> 79 due to low time. Expected time usage reduced from 31.8s -> 8.7s...\n",
      "\t1.92s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "\t1.92s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\model.pkl\n",
      "\t0.5793\t = Validation score   (macro_f1)\n",
      "\t3.17s\t = Training   runtime\n",
      "\t4.49s\t = Validation runtime\n",
      "\t1475.6\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\model.pkl\n",
      "\t0.5793\t = Validation score   (macro_f1)\n",
      "\t3.17s\t = Training   runtime\n",
      "\t4.49s\t = Validation runtime\n",
      "\t1475.6\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_2_BAG_L2 ... Training model for up to 1.59s of the 499.89s of remaining time.\n",
      "Fitting model: RandomForest_2_BAG_L2 ... Training model for up to 1.59s of the 499.89s of remaining time.\n",
      "\tFitting RandomForest_2_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_2_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L2\\utils\\model_template.pkl\n",
      "\tWarning: Model is expected to require 682.2s to train, which exceeds the maximum time limit of 0.3s, skipping model...\n",
      "\tTime limit exceeded... Skipping RandomForest_2_BAG_L2.\n",
      "\tWarning: Model is expected to require 682.2s to train, which exceeds the maximum time limit of 0.3s, skipping model...\n",
      "\tTime limit exceeded... Skipping RandomForest_2_BAG_L2.\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L2\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_3_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L2 due to lack of time remaining.\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_2_BAG_L2\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_3_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Model configs that will be trained (in order):\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L3: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L3 ... Training model for up to 360.00s of the 484.45s of remaining time.\n",
      "\tFitting WeightedEnsemble_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L3\\utils\\model_template.pkl\n",
      "\tWeightedEnsemble_L3: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L3 ... Training model for up to 360.00s of the 484.45s of remaining time.\n",
      "\tFitting WeightedEnsemble_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L3\\utils\\model_template.pkl\n",
      "Ensemble size: 8\n",
      "Ensemble weights: \n",
      "[0.875 0.    0.    0.125]\n",
      "\t0.09s\t= Estimated out-of-fold prediction time...\n",
      "Ensemble size: 8\n",
      "Ensemble weights: \n",
      "[0.875 0.    0.    0.125]\n",
      "\t0.09s\t= Estimated out-of-fold prediction time...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L3\\model.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L3\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_BAG_L2': 0.875, 'RandomForest_BAG_L2': 0.125}\n",
      "\t0.6017\t = Validation score   (macro_f1)\n",
      "\t1.04s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t1220.9\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L3: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L3: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L3: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L3: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L3: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tRandomForest_2_BAG_L3: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tEnsemble Weights: {'LightGBM_BAG_L2': 0.875, 'RandomForest_BAG_L2': 0.125}\n",
      "\t0.6017\t = Validation score   (macro_f1)\n",
      "\t1.04s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t1220.9\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L3: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L3: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L3: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L3: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L3: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tRandomForest_2_BAG_L3: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L3: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L3: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L3: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L3: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L3: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L3: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_2_BAG_L3: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L3: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L3: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L3: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L3 models, fit_strategy=\"sequential\" ...\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "\tCatBoost_BAG_L3: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L3: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L3: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L3: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L3: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L3: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_2_BAG_L3: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L3: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L3: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L3: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L3 models, fit_strategy=\"sequential\" ...\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Fitting model: NeuralNetFastAI_BAG_L3 ... Training model for up to 483.36s of the 483.29s of remaining time.\n",
      "Fitting model: NeuralNetFastAI_BAG_L3 ... Training model for up to 483.36s of the 483.29s of remaining time.\n",
      "\tFitting NeuralNetFastAI_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting NeuralNetFastAI_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L3 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L3 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_BAG_L3 ... Training model for up to 481.21s of the 481.14s of remaining time.\n",
      "Fitting model: LightGBM_BAG_L3 ... Training model for up to 481.21s of the 481.14s of remaining time.\n",
      "\tFitting LightGBM_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.734258\tvalid_set's macro_f1: 0.592243\n",
      "[100]\tvalid_set's multi_logloss: 0.726425\tvalid_set's macro_f1: 0.589795\n",
      "[100]\tvalid_set's multi_logloss: 0.726425\tvalid_set's macro_f1: 0.589795\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.731499\tvalid_set's macro_f1: 0.60257\n",
      "[100]\tvalid_set's multi_logloss: 0.722129\tvalid_set's macro_f1: 0.594316\n",
      "[100]\tvalid_set's multi_logloss: 0.722129\tvalid_set's macro_f1: 0.594316\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.731202\tvalid_set's macro_f1: 0.594613\n",
      "[100]\tvalid_set's multi_logloss: 0.722668\tvalid_set's macro_f1: 0.586728\n",
      "[100]\tvalid_set's multi_logloss: 0.722668\tvalid_set's macro_f1: 0.586728\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.742113\tvalid_set's macro_f1: 0.601106\n",
      "[100]\tvalid_set's multi_logloss: 0.731943\tvalid_set's macro_f1: 0.594548\n",
      "[100]\tvalid_set's multi_logloss: 0.731943\tvalid_set's macro_f1: 0.594548\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.727252\tvalid_set's macro_f1: 0.598487\n",
      "[100]\tvalid_set's multi_logloss: 0.717421\tvalid_set's macro_f1: 0.598002\n",
      "[100]\tvalid_set's multi_logloss: 0.717421\tvalid_set's macro_f1: 0.598002\n",
      "[150]\tvalid_set's multi_logloss: 0.727174\tvalid_set's macro_f1: 0.594719\n",
      "[150]\tvalid_set's multi_logloss: 0.727174\tvalid_set's macro_f1: 0.594719\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.746664\tvalid_set's macro_f1: 0.595815\n",
      "[100]\tvalid_set's multi_logloss: 0.736593\tvalid_set's macro_f1: 0.594281\n",
      "[100]\tvalid_set's multi_logloss: 0.736593\tvalid_set's macro_f1: 0.594281\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.71451\tvalid_set's macro_f1: 0.602728\n",
      "[100]\tvalid_set's multi_logloss: 0.703057\tvalid_set's macro_f1: 0.599042\n",
      "[100]\tvalid_set's multi_logloss: 0.703057\tvalid_set's macro_f1: 0.599042\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.72996\tvalid_set's macro_f1: 0.607567\n",
      "[100]\tvalid_set's multi_logloss: 0.720026\tvalid_set's macro_f1: 0.60248\n",
      "[100]\tvalid_set's multi_logloss: 0.720026\tvalid_set's macro_f1: 0.60248\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.742684\tvalid_set's macro_f1: 0.595543\n",
      "[100]\tvalid_set's multi_logloss: 0.733469\tvalid_set's macro_f1: 0.590787\n",
      "[100]\tvalid_set's multi_logloss: 0.733469\tvalid_set's macro_f1: 0.590787\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.739342\tvalid_set's macro_f1: 0.583226\n",
      "[100]\tvalid_set's multi_logloss: 0.729159\tvalid_set's macro_f1: 0.579707\n",
      "[100]\tvalid_set's multi_logloss: 0.729159\tvalid_set's macro_f1: 0.579707\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\model.pkl\n",
      "\t0.598\t = Validation score   (macro_f1)\n",
      "\t201.38s\t = Training   runtime\n",
      "\t1.27s\t = Validation runtime\n",
      "\t761.1\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\model.pkl\n",
      "\t0.598\t = Validation score   (macro_f1)\n",
      "\t201.38s\t = Training   runtime\n",
      "\t1.27s\t = Validation runtime\n",
      "\t761.1\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_2_BAG_L3 ... Training model for up to 276.37s of the 276.30s of remaining time.\n",
      "Fitting model: LightGBM_2_BAG_L3 ... Training model for up to 276.37s of the 276.30s of remaining time.\n",
      "\tFitting LightGBM_2_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_2_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.784836\tvalid_set's macro_f1: 0.583258\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 81. Best iteration is:\n",
      "\t[50]\tvalid_set's multi_logloss: 0.784836\tvalid_set's macro_f1: 0.583258\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.782246\tvalid_set's macro_f1: 0.594755\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 82. Best iteration is:\n",
      "\t[65]\tvalid_set's multi_logloss: 0.752161\tvalid_set's macro_f1: 0.59664\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.781784\tvalid_set's macro_f1: 0.585437\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 85. Best iteration is:\n",
      "\t[64]\tvalid_set's multi_logloss: 0.753123\tvalid_set's macro_f1: 0.587072\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.790632\tvalid_set's macro_f1: 0.599882\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 86. Best iteration is:\n",
      "\t[82]\tvalid_set's multi_logloss: 0.746069\tvalid_set's macro_f1: 0.600486\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.780181\tvalid_set's macro_f1: 0.591193\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 90. Best iteration is:\n",
      "\t[84]\tvalid_set's multi_logloss: 0.73162\tvalid_set's macro_f1: 0.593463\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.796826\tvalid_set's macro_f1: 0.584207\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 92. Best iteration is:\n",
      "\t[89]\tvalid_set's multi_logloss: 0.749813\tvalid_set's macro_f1: 0.586497\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.764512\tvalid_set's macro_f1: 0.603456\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 98. Best iteration is:\n",
      "\t[51]\tvalid_set's multi_logloss: 0.761698\tvalid_set's macro_f1: 0.603489\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.77848\tvalid_set's macro_f1: 0.604718\n",
      "[100]\tvalid_set's multi_logloss: 0.726194\tvalid_set's macro_f1: 0.606006\n",
      "[100]\tvalid_set's multi_logloss: 0.726194\tvalid_set's macro_f1: 0.606006\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 103. Best iteration is:\n",
      "\t[73]\tvalid_set's multi_logloss: 0.739359\tvalid_set's macro_f1: 0.607617\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.790366\tvalid_set's macro_f1: 0.594592\n",
      "[100]\tvalid_set's multi_logloss: 0.739476\tvalid_set's macro_f1: 0.595707\n",
      "[100]\tvalid_set's multi_logloss: 0.739476\tvalid_set's macro_f1: 0.595707\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 113. Best iteration is:\n",
      "\t[84]\tvalid_set's multi_logloss: 0.744819\tvalid_set's macro_f1: 0.596557\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.786032\tvalid_set's macro_f1: 0.583516\n",
      "[100]\tvalid_set's multi_logloss: 0.734707\tvalid_set's macro_f1: 0.582196\n",
      "[100]\tvalid_set's multi_logloss: 0.734707\tvalid_set's macro_f1: 0.582196\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 133. Best iteration is:\n",
      "\t[68]\tvalid_set's multi_logloss: 0.752937\tvalid_set's macro_f1: 0.584745\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\model.pkl\n",
      "\t0.5936\t = Validation score   (macro_f1)\n",
      "\t263.71s\t = Training   runtime\n",
      "\t1.55s\t = Validation runtime\n",
      "\t743.8\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping LightGBM_3_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\model.pkl\n",
      "\t0.5936\t = Validation score   (macro_f1)\n",
      "\t263.71s\t = Training   runtime\n",
      "\t1.55s\t = Validation runtime\n",
      "\t743.8\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping LightGBM_3_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping RandomForest_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping RandomForest_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping RandomForest_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping RandomForest_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_3_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L3 due to lack of time remaining.\n",
      "Skipping CatBoost_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping CatBoost_3_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\utils\\oof.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L4: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L4 ... Training model for up to 360.00s of the 8.32s of remaining time.\n",
      "\tFitting WeightedEnsemble_L4 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L4\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L4\\utils\\model_template.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L4: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L4 ... Training model for up to 360.00s of the 8.32s of remaining time.\n",
      "\tFitting WeightedEnsemble_L4 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L4\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L4\\utils\\model_template.pkl\n",
      "Ensemble size: 23\n",
      "Ensemble weights: \n",
      "[0.         0.         0.         0.         0.56521739 0.\n",
      " 0.         0.         0.43478261 0.        ]\n",
      "\t0.0s\t= Estimated out-of-fold prediction time...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L4\\utils\\oof.pkl\n",
      "Ensemble size: 23\n",
      "Ensemble weights: \n",
      "[0.         0.         0.         0.         0.56521739 0.\n",
      " 0.         0.         0.43478261 0.        ]\n",
      "\t0.0s\t= Estimated out-of-fold prediction time...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L4\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L4\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_BAG_L2': 0.565, 'LightGBM_BAG_L3': 0.435}\n",
      "\t0.6023\t = Validation score   (macro_f1)\n",
      "\t2.5s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t761.0\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "AutoGluon training complete, total runtime = 2694.4s ... Best model: WeightedEnsemble_L4 | Estimated inference throughput: 761.0 rows/s (9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L4\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_BAG_L2': 0.565, 'LightGBM_BAG_L3': 0.435}\n",
      "\t0.6023\t = Validation score   (macro_f1)\n",
      "\t2.5s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t761.0\t = Inference  throughput (rows/s | 9138 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "AutoGluon training complete, total runtime = 2694.4s ... Best model: WeightedEnsemble_L4 | Estimated inference throughput: 761.0 rows/s (9138 batch size)\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\learner.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\learner.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\predictor.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\version.txt with contents \"1.3.1\"\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\metadata.json\n",
      "TabularPredictor saved. To load, use: predictor = TabularPredictor.load(\"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\")\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\predictor.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\version.txt with contents \"1.3.1\"\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\metadata.json\n",
      "TabularPredictor saved. To load, use: predictor = TabularPredictor.load(\"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\")\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L1\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_3_BAG_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\RandomForest_BAG_L2\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L3\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L3\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_BAG_L3\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\LightGBM_2_BAG_L3\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L4\\model.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\ds_sub_fit\\sub_fit_ho\\models\\WeightedEnsemble_L4\\model.pkl\n",
      "Deleting DyStack predictor artifacts (clean_up_fits=True) ...\n",
      "Deleting DyStack predictor artifacts (clean_up_fits=True) ...\n",
      "Leaderboard on holdout data (DyStack):\n",
      "                  model  score_holdout  score_val eval_metric  pred_time_test  pred_time_val     fit_time  pred_time_test_marginal  pred_time_val_marginal  fit_time_marginal  stack_level  can_infer  fit_order\n",
      "0       LightGBM_BAG_L2       0.606205   0.601706    macro_f1        3.281869       9.064436  1381.458743                 0.416003                1.289138         205.108212            2       True          6\n",
      "1   WeightedEnsemble_L3       0.605702   0.601732    macro_f1        3.422181      13.562699  1385.673001                 0.009999                0.013003           1.040560            3       True         10\n",
      "2   WeightedEnsemble_L4       0.605482   0.602299    macro_f1        5.147572      18.084301  2354.759576                 0.010000                0.011000           2.497690            4       True         13\n",
      "3     LightGBM_2_BAG_L2       0.598726   0.596467    macro_f1        3.447018       9.276588  1625.543709                 0.581151                1.501289         449.193177            2       True          7\n",
      "4     LightGBM_2_BAG_L3       0.597881   0.593588    macro_f1        5.293866      18.352427  2414.599058                 0.612428                1.553564         263.714468            3       True         12\n",
      "5       LightGBM_BAG_L3       0.594748   0.598030    macro_f1        5.137572      18.073301  2352.261886                 0.456134                1.274438         201.377296            3       True         11\n",
      "6     LightGBM_3_BAG_L2       0.592267   0.595389    macro_f1        3.553971       9.523176  1493.409505                 0.688105                1.747877         317.058973            2       True          8\n",
      "7     LightGBM_2_BAG_L1       0.580073   0.595344    macro_f1        1.019819       1.613755   633.735207                 1.019819                1.613755         633.735207            1       True          2\n",
      "8     LightGBM_3_BAG_L1       0.577053   0.591369    macro_f1        0.718158       1.680288   238.554814                 0.718158                1.680288         238.554814            1       True          3\n",
      "9   WeightedEnsemble_L2       0.575235   0.596672    macro_f1        2.058705       3.005524   936.328437                 0.008998                0.010000           1.021027            2       True          5\n",
      "10  RandomForest_BAG_L2       0.574731   0.579345    macro_f1        2.996179      12.260559  1179.524229                 0.130313                4.485260           3.173697            2       True          9\n",
      "11      LightGBM_BAG_L1       0.574234   0.595690    macro_f1        1.029888       1.381770   301.572203                 1.029888                1.381770         301.572203            1       True          1\n",
      "12  RandomForest_BAG_L1       0.548425   0.554574    macro_f1        0.098001       3.099486     2.488307                 0.098001                3.099486           2.488307            1       True          4\n",
      "\t2\t = Optimal   num_stack_levels (Stacked Overfitting Occurred: False)\n",
      "\t2701s\t = DyStack   runtime |\t8099s\t = Remaining runtime\n",
      "Starting main fit with num_stack_levels=2.\n",
      "\tFor future fit calls on this dataset, you can skip DyStack to save time: `predictor.fit(..., dynamic_stacking=False, num_stack_levels=2)`\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\learner.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\predictor.pkl\n",
      "Leaderboard on holdout data (DyStack):\n",
      "                  model  score_holdout  score_val eval_metric  pred_time_test  pred_time_val     fit_time  pred_time_test_marginal  pred_time_val_marginal  fit_time_marginal  stack_level  can_infer  fit_order\n",
      "0       LightGBM_BAG_L2       0.606205   0.601706    macro_f1        3.281869       9.064436  1381.458743                 0.416003                1.289138         205.108212            2       True          6\n",
      "1   WeightedEnsemble_L3       0.605702   0.601732    macro_f1        3.422181      13.562699  1385.673001                 0.009999                0.013003           1.040560            3       True         10\n",
      "2   WeightedEnsemble_L4       0.605482   0.602299    macro_f1        5.147572      18.084301  2354.759576                 0.010000                0.011000           2.497690            4       True         13\n",
      "3     LightGBM_2_BAG_L2       0.598726   0.596467    macro_f1        3.447018       9.276588  1625.543709                 0.581151                1.501289         449.193177            2       True          7\n",
      "4     LightGBM_2_BAG_L3       0.597881   0.593588    macro_f1        5.293866      18.352427  2414.599058                 0.612428                1.553564         263.714468            3       True         12\n",
      "5       LightGBM_BAG_L3       0.594748   0.598030    macro_f1        5.137572      18.073301  2352.261886                 0.456134                1.274438         201.377296            3       True         11\n",
      "6     LightGBM_3_BAG_L2       0.592267   0.595389    macro_f1        3.553971       9.523176  1493.409505                 0.688105                1.747877         317.058973            2       True          8\n",
      "7     LightGBM_2_BAG_L1       0.580073   0.595344    macro_f1        1.019819       1.613755   633.735207                 1.019819                1.613755         633.735207            1       True          2\n",
      "8     LightGBM_3_BAG_L1       0.577053   0.591369    macro_f1        0.718158       1.680288   238.554814                 0.718158                1.680288         238.554814            1       True          3\n",
      "9   WeightedEnsemble_L2       0.575235   0.596672    macro_f1        2.058705       3.005524   936.328437                 0.008998                0.010000           1.021027            2       True          5\n",
      "10  RandomForest_BAG_L2       0.574731   0.579345    macro_f1        2.996179      12.260559  1179.524229                 0.130313                4.485260           3.173697            2       True          9\n",
      "11      LightGBM_BAG_L1       0.574234   0.595690    macro_f1        1.029888       1.381770   301.572203                 1.029888                1.381770         301.572203            1       True          1\n",
      "12  RandomForest_BAG_L1       0.548425   0.554574    macro_f1        0.098001       3.099486     2.488307                 0.098001                3.099486           2.488307            1       True          4\n",
      "\t2\t = Optimal   num_stack_levels (Stacked Overfitting Occurred: False)\n",
      "\t2701s\t = DyStack   runtime |\t8099s\t = Remaining runtime\n",
      "Starting main fit with num_stack_levels=2.\n",
      "\tFor future fit calls on this dataset, you can skip DyStack to save time: `predictor.fit(..., dynamic_stacking=False, num_stack_levels=2)`\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\learner.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\predictor.pkl\n",
      "Beginning AutoGluon training ... Time limit = 8099s\n",
      "AutoGluon will save models to \"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\"\n",
      "Train Data Rows:    51397\n",
      "Train Data Columns: 1244\n",
      "Label Column:       FLAG\n",
      "Problem Type:       multiclass\n",
      "Preprocessing data ...\n",
      "Beginning AutoGluon training ... Time limit = 8099s\n",
      "AutoGluon will save models to \"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\"\n",
      "Train Data Rows:    51397\n",
      "Train Data Columns: 1244\n",
      "Label Column:       FLAG\n",
      "Problem Type:       multiclass\n",
      "Preprocessing data ...\n",
      "Train Data Class Count: 10\n",
      "Using Feature Generators to preprocess the data ...\n",
      "Train Data Class Count: 10\n",
      "Using Feature Generators to preprocess the data ...\n",
      "Fitting AutoMLPipelineFeatureGenerator...\n",
      "\tAvailable Memory:                    110098.38 MB\n",
      "\tTrain Data (Original)  Memory Usage: 242.43 MB (0.2% of available memory)\n",
      "Fitting AutoMLPipelineFeatureGenerator...\n",
      "\tAvailable Memory:                    110098.38 MB\n",
      "\tTrain Data (Original)  Memory Usage: 242.43 MB (0.2% of available memory)\n",
      "\tInferring data type of each feature based on column values. Set feature_metadata_in to manually specify special dtypes of the features.\n",
      "\tInferring data type of each feature based on column values. Set feature_metadata_in to manually specify special dtypes of the features.\n",
      "\tStage 1 Generators:\n",
      "\t\tFitting AsTypeFeatureGenerator...\n",
      "\tStage 1 Generators:\n",
      "\t\tFitting AsTypeFeatureGenerator...\n",
      "\t\t\tNote: Converting 9 features to boolean dtype as they only contain 2 unique values.\n",
      "\t\t\tOriginal Features (exact raw dtype, raw dtype):\n",
      "\t\t\tNote: Converting 9 features to boolean dtype as they only contain 2 unique values.\n",
      "\t\t\tOriginal Features (exact raw dtype, raw dtype):\n",
      "\t\t\t\t('float32', 'float') : 1234 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int8', 'int')      :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', []) : 1234 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])   :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('float32', 'float') : 1234 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int8', 'int')      :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', []) : 1234 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])   :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.3s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 2 Generators:\n",
      "\t\tFitting FillNaFeatureGenerator...\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.3s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 2 Generators:\n",
      "\t\tFitting FillNaFeatureGenerator...\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.1s = Fit runtime\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.1s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 3 Generators:\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 3 Generators:\n",
      "\t\tFitting IdentityFeatureGenerator...\n",
      "\t\tFitting IdentityFeatureGenerator...\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.1s = Fit runtime\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.1s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\t\tSkipping CategoryFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping DatetimeFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping TextSpecialFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping TextNgramFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping IdentityFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping IsNanFeatureGenerator: No input feature with required dtypes.\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\t\tSkipping CategoryFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping DatetimeFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping TextSpecialFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping TextNgramFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping IdentityFeatureGenerator: No input feature with required dtypes.\n",
      "\t\tSkipping IsNanFeatureGenerator: No input feature with required dtypes.\n",
      "\tStage 4 Generators:\n",
      "\t\tFitting DropUniqueFeatureGenerator...\n",
      "\tStage 4 Generators:\n",
      "\t\tFitting DropUniqueFeatureGenerator...\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1232 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    9 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_AGE_BY_SEX_STD', 'NATURE_IS_YOUNG', ...]\n",
      "\t\t\t0.7s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 5 Generators:\n",
      "\t\t\t0.7s = Fit runtime\n",
      "\t\t\t1244 features in original data used to generate 1244 features in processed data.\n",
      "\tStage 5 Generators:\n",
      "\t\tFitting DropDuplicatesFeatureGenerator...\n",
      "\t\tFitting DropDuplicatesFeatureGenerator...\n",
      "\t\t\t35 duplicate columns removed: ['AST_AUM_BAL_MAX', 'daily_unique_pages_mean', 'daily_visits_mean', 'daily_unique_pages_max', 'daily_visits_max', 'daily_visits_min', 'daily_unique_pages_std', 'daily_visits_std', 'total_page_visits', 'total_model_visits', 'total_visit_count', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', 'visit_days_min', 'first_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'last_visit_days', 'mb_trnflw_top8_transcode_amount_mean', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_last_month_amt', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "\t\t\t35 duplicate columns removed: ['AST_AUM_BAL_MAX', 'daily_unique_pages_mean', 'daily_visits_mean', 'daily_unique_pages_max', 'daily_visits_max', 'daily_visits_min', 'daily_unique_pages_std', 'daily_visits_std', 'total_page_visits', 'total_model_visits', 'total_visit_count', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', 'visit_days_min', 'first_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'last_visit_days', 'mb_trnflw_top8_transcode_amount_mean', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_last_month_amt', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t\t\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t\t\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t\t\t4.9s = Fit runtime\n",
      "\t\t\t4.9s = Fit runtime\n",
      "\t\t\t1209 features in original data used to generate 1209 features in processed data.\n",
      "\t\t\t1209 features in original data used to generate 1209 features in processed data.\n",
      "\tUnused Original Features (Count: 35): ['AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', 'total_visit_count', 'visit_days_min', 'daily_visits_mean', 'daily_visits_max', 'daily_visits_min', 'daily_visits_std', 'first_visit_days', 'last_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'daily_unique_pages_mean', 'daily_unique_pages_max', 'daily_unique_pages_std', 'mb_trnflw_top8_transcode_amount_mean', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'aps_last_month_amt', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "\t\tThese features were not used to generate any of the output features. Add a feature generator compatible with these features to utilize them.\n",
      "\t\tFeatures can also be unused if they carry very little information, such as being categorical but having almost entirely unique values or being duplicates of other features.\n",
      "\t\tThese features do not need to be present at inference time.\n",
      "\t\t('float', []) : 35 | ['AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', ...]\n",
      "\tTypes of features in original data (exact raw dtype, raw dtype):\n",
      "\t\t('float32', 'float') : 1199 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int8', 'int')      :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tUnused Original Features (Count: 35): ['AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', 'total_visit_count', 'visit_days_min', 'daily_visits_mean', 'daily_visits_max', 'daily_visits_min', 'daily_visits_std', 'first_visit_days', 'last_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'daily_unique_pages_mean', 'daily_unique_pages_max', 'daily_unique_pages_std', 'mb_trnflw_top8_transcode_amount_mean', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'aps_last_month_amt', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n",
      "\t\tThese features were not used to generate any of the output features. Add a feature generator compatible with these features to utilize them.\n",
      "\t\tFeatures can also be unused if they carry very little information, such as being categorical but having almost entirely unique values or being duplicates of other features.\n",
      "\t\tThese features do not need to be present at inference time.\n",
      "\t\t('float', []) : 35 | ['AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', ...]\n",
      "\tTypes of features in original data (exact raw dtype, raw dtype):\n",
      "\t\t('float32', 'float') : 1199 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int8', 'int')      :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t('float', []) : 1199 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int', [])   :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in processed data (exact raw dtype, raw dtype):\n",
      "\t\t('float32', 'float') : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int8', 'int')      :   11 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in original data (raw dtype, special dtypes):\n",
      "\t\t('float', []) : 1199 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int', [])   :   10 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in processed data (exact raw dtype, raw dtype):\n",
      "\t\t('float32', 'float') : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int8', 'int')      :   11 | ['NATURE_SEX_CD', 'NATURE_RANK_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT', ...]\n",
      "\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t7.3s = Fit runtime\n",
      "\tTypes of features in processed data (raw dtype, special dtypes):\n",
      "\t\t('float', [])     : 1198 | ['aget_pay_count', 'aget_pay_unit_count', 'tr_amt_sum', 'tr_amt_mean', 'tr_amt_std', ...]\n",
      "\t\t('int', [])       :    3 | ['NATURE_RANK_CD', 'NATURE_AGE_GROUP', 'NATURE_SEX_RANK_INTERACT']\n",
      "\t\t('int', ['bool']) :    8 | ['NATURE_SEX_CD', 'NATURE_SEAN_ACTV_IND', 'NATURE_AGE_BY_SEX_MEAN', 'NATURE_IS_YOUNG', 'NATURE_IS_MIDDLE', ...]\n",
      "\t7.3s = Fit runtime\n",
      "\t1209 features in original data used to generate 1209 features in processed data.\n",
      "\tTrain Data (Processed) Memory Usage: 235.42 MB (0.2% of available memory)\n",
      "\t1209 features in original data used to generate 1209 features in processed data.\n",
      "\tTrain Data (Processed) Memory Usage: 235.42 MB (0.2% of available memory)\n",
      "Data preprocessing and feature engineering runtime = 7.61s ...\n",
      "AutoGluon will gauge predictive performance using evaluation metric: 'macro_f1'\n",
      "\tTo change this, specify the eval_metric parameter of Predictor()\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\learner.pkl\n",
      "User-specified model hyperparameters to be fit:\n",
      "{\n",
      "\t'GBM': [{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}, {'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}, {'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}],\n",
      "\t'CAT': [{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1}, {'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2}, {'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128}],\n",
      "\t'XGB': [{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1}, {'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2}, {'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15}],\n",
      "\t'RF': [{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt'}, {'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8}],\n",
      "\t'XT': [{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2}, {'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4}],\n",
      "\t'NN_TORCH': [{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1}, {'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2}],\n",
      "\t'FASTAI': [{'epochs': 50, 'lr': 0.001}],\n",
      "}\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\utils\\data\\X.pkl\n",
      "Data preprocessing and feature engineering runtime = 7.61s ...\n",
      "AutoGluon will gauge predictive performance using evaluation metric: 'macro_f1'\n",
      "\tTo change this, specify the eval_metric parameter of Predictor()\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\learner.pkl\n",
      "User-specified model hyperparameters to be fit:\n",
      "{\n",
      "\t'GBM': [{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}, {'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}, {'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}],\n",
      "\t'CAT': [{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1}, {'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2}, {'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128}],\n",
      "\t'XGB': [{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1}, {'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2}, {'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15}],\n",
      "\t'RF': [{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt'}, {'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8}],\n",
      "\t'XT': [{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2}, {'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4}],\n",
      "\t'NN_TORCH': [{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1}, {'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2}],\n",
      "\t'FASTAI': [{'epochs': 50, 'lr': 0.001}],\n",
      "}\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\utils\\data\\X.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\utils\\data\\y.pkl\n",
      "AutoGluon will fit 3 stack levels (L1 to L3) ...\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L1: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L1: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L1: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L1: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L1: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tRandomForest_2_BAG_L1: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L1: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L1: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L1: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L1: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L1: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\utils\\data\\y.pkl\n",
      "AutoGluon will fit 3 stack levels (L1 to L3) ...\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L1: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L1: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L1: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L1: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L1: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tRandomForest_2_BAG_L1: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L1: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L1: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L1: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L1: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L1: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L1: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_2_BAG_L1: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L1: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L1: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L1: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L1 models, fit_strategy=\"sequential\" ...\n",
      "\tXGBoost_BAG_L1: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_2_BAG_L1: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L1: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L1: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L1: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L1 models, fit_strategy=\"sequential\" ...\n",
      "Fitting model: NeuralNetFastAI_BAG_L1 ... Training model for up to 3595.46s of the 8091.81s of remaining time.\n",
      "Fitting model: NeuralNetFastAI_BAG_L1 ... Training model for up to 3595.46s of the 8091.81s of remaining time.\n",
      "\tFitting NeuralNetFastAI_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting NeuralNetFastAI_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L1 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L1 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_BAG_L1 ... Training model for up to 3593.41s of the 8089.75s of remaining time.\n",
      "Fitting model: LightGBM_BAG_L1 ... Training model for up to 3593.41s of the 8089.75s of remaining time.\n",
      "\tFitting LightGBM_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.763407\tvalid_set's macro_f1: 0.574482\n",
      "[100]\tvalid_set's multi_logloss: 0.738291\tvalid_set's macro_f1: 0.575343\n",
      "[100]\tvalid_set's multi_logloss: 0.738291\tvalid_set's macro_f1: 0.575343\n",
      "[150]\tvalid_set's multi_logloss: 0.742472\tvalid_set's macro_f1: 0.575354\n",
      "[150]\tvalid_set's multi_logloss: 0.742472\tvalid_set's macro_f1: 0.575354\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.745774\tvalid_set's macro_f1: 0.584105\n",
      "[100]\tvalid_set's multi_logloss: 0.717958\tvalid_set's macro_f1: 0.583669\n",
      "[100]\tvalid_set's multi_logloss: 0.717958\tvalid_set's macro_f1: 0.583669\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.731925\tvalid_set's macro_f1: 0.584152\n",
      "[100]\tvalid_set's multi_logloss: 0.704431\tvalid_set's macro_f1: 0.586718\n",
      "[100]\tvalid_set's multi_logloss: 0.704431\tvalid_set's macro_f1: 0.586718\n",
      "[150]\tvalid_set's multi_logloss: 0.705367\tvalid_set's macro_f1: 0.590258\n",
      "[150]\tvalid_set's multi_logloss: 0.705367\tvalid_set's macro_f1: 0.590258\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.733292\tvalid_set's macro_f1: 0.589454\n",
      "[100]\tvalid_set's multi_logloss: 0.706041\tvalid_set's macro_f1: 0.592536\n",
      "[100]\tvalid_set's multi_logloss: 0.706041\tvalid_set's macro_f1: 0.592536\n",
      "[150]\tvalid_set's multi_logloss: 0.707517\tvalid_set's macro_f1: 0.595027\n",
      "[150]\tvalid_set's multi_logloss: 0.707517\tvalid_set's macro_f1: 0.595027\n",
      "[200]\tvalid_set's multi_logloss: 0.712912\tvalid_set's macro_f1: 0.596169\n",
      "[200]\tvalid_set's multi_logloss: 0.712912\tvalid_set's macro_f1: 0.596169\n",
      "[250]\tvalid_set's multi_logloss: 0.721564\tvalid_set's macro_f1: 0.595919\n",
      "[250]\tvalid_set's multi_logloss: 0.721564\tvalid_set's macro_f1: 0.595919\n",
      "[300]\tvalid_set's multi_logloss: 0.729934\tvalid_set's macro_f1: 0.591983\n",
      "[300]\tvalid_set's multi_logloss: 0.729934\tvalid_set's macro_f1: 0.591983\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.732737\tvalid_set's macro_f1: 0.597508\n",
      "[100]\tvalid_set's multi_logloss: 0.703806\tvalid_set's macro_f1: 0.600283\n",
      "[100]\tvalid_set's multi_logloss: 0.703806\tvalid_set's macro_f1: 0.600283\n",
      "[150]\tvalid_set's multi_logloss: 0.704119\tvalid_set's macro_f1: 0.599039\n",
      "[150]\tvalid_set's multi_logloss: 0.704119\tvalid_set's macro_f1: 0.599039\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.739149\tvalid_set's macro_f1: 0.591111\n",
      "[100]\tvalid_set's multi_logloss: 0.711084\tvalid_set's macro_f1: 0.59249\n",
      "[100]\tvalid_set's multi_logloss: 0.711084\tvalid_set's macro_f1: 0.59249\n",
      "[150]\tvalid_set's multi_logloss: 0.713489\tvalid_set's macro_f1: 0.592613\n",
      "[150]\tvalid_set's multi_logloss: 0.713489\tvalid_set's macro_f1: 0.592613\n",
      "[200]\tvalid_set's multi_logloss: 0.719207\tvalid_set's macro_f1: 0.593508\n",
      "[200]\tvalid_set's multi_logloss: 0.719207\tvalid_set's macro_f1: 0.593508\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.747195\tvalid_set's macro_f1: 0.589257\n",
      "[100]\tvalid_set's multi_logloss: 0.720407\tvalid_set's macro_f1: 0.595427\n",
      "[100]\tvalid_set's multi_logloss: 0.720407\tvalid_set's macro_f1: 0.595427\n",
      "[150]\tvalid_set's multi_logloss: 0.722729\tvalid_set's macro_f1: 0.593611\n",
      "[150]\tvalid_set's multi_logloss: 0.722729\tvalid_set's macro_f1: 0.593611\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.736329\tvalid_set's macro_f1: 0.58923\n",
      "[100]\tvalid_set's multi_logloss: 0.7098\tvalid_set's macro_f1: 0.593606\n",
      "[100]\tvalid_set's multi_logloss: 0.7098\tvalid_set's macro_f1: 0.593606\n",
      "[150]\tvalid_set's multi_logloss: 0.712436\tvalid_set's macro_f1: 0.593817\n",
      "[150]\tvalid_set's multi_logloss: 0.712436\tvalid_set's macro_f1: 0.593817\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.74336\tvalid_set's macro_f1: 0.587814\n",
      "[100]\tvalid_set's multi_logloss: 0.716324\tvalid_set's macro_f1: 0.592091\n",
      "[100]\tvalid_set's multi_logloss: 0.716324\tvalid_set's macro_f1: 0.592091\n",
      "[150]\tvalid_set's multi_logloss: 0.717501\tvalid_set's macro_f1: 0.592419\n",
      "[150]\tvalid_set's multi_logloss: 0.717501\tvalid_set's macro_f1: 0.592419\n",
      "[200]\tvalid_set's multi_logloss: 0.722215\tvalid_set's macro_f1: 0.594981\n",
      "[200]\tvalid_set's multi_logloss: 0.722215\tvalid_set's macro_f1: 0.594981\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.733613\tvalid_set's macro_f1: 0.590938\n",
      "[100]\tvalid_set's multi_logloss: 0.70578\tvalid_set's macro_f1: 0.59333\n",
      "[100]\tvalid_set's multi_logloss: 0.70578\tvalid_set's macro_f1: 0.59333\n",
      "[150]\tvalid_set's multi_logloss: 0.708472\tvalid_set's macro_f1: 0.591573\n",
      "[150]\tvalid_set's multi_logloss: 0.708472\tvalid_set's macro_f1: 0.591573\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\model.pkl\n",
      "\t0.594\t = Validation score   (macro_f1)\n",
      "\t332.78s\t = Training   runtime\n",
      "\t0.98s\t = Validation runtime\n",
      "\t10539.0\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\model.pkl\n",
      "\t0.594\t = Validation score   (macro_f1)\n",
      "\t332.78s\t = Training   runtime\n",
      "\t0.98s\t = Validation runtime\n",
      "\t10539.0\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_2_BAG_L1 ... Training model for up to 3256.74s of the 7753.09s of remaining time.\n",
      "Fitting model: LightGBM_2_BAG_L1 ... Training model for up to 3256.74s of the 7753.09s of remaining time.\n",
      "\tFitting LightGBM_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.809744\tvalid_set's macro_f1: 0.579055\n",
      "[100]\tvalid_set's multi_logloss: 0.742307\tvalid_set's macro_f1: 0.580926\n",
      "[100]\tvalid_set's multi_logloss: 0.742307\tvalid_set's macro_f1: 0.580926\n",
      "[150]\tvalid_set's multi_logloss: 0.736601\tvalid_set's macro_f1: 0.580796\n",
      "[150]\tvalid_set's multi_logloss: 0.736601\tvalid_set's macro_f1: 0.580796\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.797768\tvalid_set's macro_f1: 0.588014\n",
      "[100]\tvalid_set's multi_logloss: 0.724798\tvalid_set's macro_f1: 0.590282\n",
      "[100]\tvalid_set's multi_logloss: 0.724798\tvalid_set's macro_f1: 0.590282\n",
      "[150]\tvalid_set's multi_logloss: 0.715984\tvalid_set's macro_f1: 0.594616\n",
      "[150]\tvalid_set's multi_logloss: 0.715984\tvalid_set's macro_f1: 0.594616\n",
      "[200]\tvalid_set's multi_logloss: 0.720219\tvalid_set's macro_f1: 0.596701\n",
      "[200]\tvalid_set's multi_logloss: 0.720219\tvalid_set's macro_f1: 0.596701\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.787677\tvalid_set's macro_f1: 0.584868\n",
      "[100]\tvalid_set's multi_logloss: 0.713925\tvalid_set's macro_f1: 0.595016\n",
      "[100]\tvalid_set's multi_logloss: 0.713925\tvalid_set's macro_f1: 0.595016\n",
      "[150]\tvalid_set's multi_logloss: 0.704718\tvalid_set's macro_f1: 0.5909\n",
      "[150]\tvalid_set's multi_logloss: 0.704718\tvalid_set's macro_f1: 0.5909\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.787853\tvalid_set's macro_f1: 0.586719\n",
      "[100]\tvalid_set's multi_logloss: 0.714589\tvalid_set's macro_f1: 0.585727\n",
      "[100]\tvalid_set's multi_logloss: 0.714589\tvalid_set's macro_f1: 0.585727\n",
      "[150]\tvalid_set's multi_logloss: 0.705266\tvalid_set's macro_f1: 0.58806\n",
      "[150]\tvalid_set's multi_logloss: 0.705266\tvalid_set's macro_f1: 0.58806\n",
      "[200]\tvalid_set's multi_logloss: 0.707945\tvalid_set's macro_f1: 0.590497\n",
      "[200]\tvalid_set's multi_logloss: 0.707945\tvalid_set's macro_f1: 0.590497\n",
      "[250]\tvalid_set's multi_logloss: 0.716178\tvalid_set's macro_f1: 0.591532\n",
      "[250]\tvalid_set's multi_logloss: 0.716178\tvalid_set's macro_f1: 0.591532\n",
      "[300]\tvalid_set's multi_logloss: 0.725569\tvalid_set's macro_f1: 0.590092\n",
      "[300]\tvalid_set's multi_logloss: 0.725569\tvalid_set's macro_f1: 0.590092\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.788077\tvalid_set's macro_f1: 0.592388\n",
      "[100]\tvalid_set's multi_logloss: 0.712541\tvalid_set's macro_f1: 0.598673\n",
      "[100]\tvalid_set's multi_logloss: 0.712541\tvalid_set's macro_f1: 0.598673\n",
      "[150]\tvalid_set's multi_logloss: 0.702021\tvalid_set's macro_f1: 0.59926\n",
      "[150]\tvalid_set's multi_logloss: 0.702021\tvalid_set's macro_f1: 0.59926\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.793879\tvalid_set's macro_f1: 0.593101\n",
      "[100]\tvalid_set's multi_logloss: 0.721933\tvalid_set's macro_f1: 0.59773\n",
      "[100]\tvalid_set's multi_logloss: 0.721933\tvalid_set's macro_f1: 0.59773\n",
      "[150]\tvalid_set's multi_logloss: 0.71358\tvalid_set's macro_f1: 0.598898\n",
      "[150]\tvalid_set's multi_logloss: 0.71358\tvalid_set's macro_f1: 0.598898\n",
      "[200]\tvalid_set's multi_logloss: 0.717453\tvalid_set's macro_f1: 0.5954\n",
      "[200]\tvalid_set's multi_logloss: 0.717453\tvalid_set's macro_f1: 0.5954\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.800355\tvalid_set's macro_f1: 0.590018\n",
      "[100]\tvalid_set's multi_logloss: 0.728344\tvalid_set's macro_f1: 0.596032\n",
      "[100]\tvalid_set's multi_logloss: 0.728344\tvalid_set's macro_f1: 0.596032\n",
      "[150]\tvalid_set's multi_logloss: 0.718934\tvalid_set's macro_f1: 0.593494\n",
      "[150]\tvalid_set's multi_logloss: 0.718934\tvalid_set's macro_f1: 0.593494\n",
      "[200]\tvalid_set's multi_logloss: 0.722265\tvalid_set's macro_f1: 0.595843\n",
      "[200]\tvalid_set's multi_logloss: 0.722265\tvalid_set's macro_f1: 0.595843\n",
      "[250]\tvalid_set's multi_logloss: 0.730849\tvalid_set's macro_f1: 0.595685\n",
      "[250]\tvalid_set's multi_logloss: 0.730849\tvalid_set's macro_f1: 0.595685\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.790627\tvalid_set's macro_f1: 0.587083\n",
      "[100]\tvalid_set's multi_logloss: 0.717856\tvalid_set's macro_f1: 0.59152\n",
      "[100]\tvalid_set's multi_logloss: 0.717856\tvalid_set's macro_f1: 0.59152\n",
      "[150]\tvalid_set's multi_logloss: 0.70927\tvalid_set's macro_f1: 0.594016\n",
      "[150]\tvalid_set's multi_logloss: 0.70927\tvalid_set's macro_f1: 0.594016\n",
      "[200]\tvalid_set's multi_logloss: 0.711601\tvalid_set's macro_f1: 0.595898\n",
      "[200]\tvalid_set's multi_logloss: 0.711601\tvalid_set's macro_f1: 0.595898\n",
      "[250]\tvalid_set's multi_logloss: 0.719338\tvalid_set's macro_f1: 0.593174\n",
      "[250]\tvalid_set's multi_logloss: 0.719338\tvalid_set's macro_f1: 0.593174\n",
      "[300]\tvalid_set's multi_logloss: 0.727458\tvalid_set's macro_f1: 0.592717\n",
      "[300]\tvalid_set's multi_logloss: 0.727458\tvalid_set's macro_f1: 0.592717\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.795734\tvalid_set's macro_f1: 0.595869\n",
      "[100]\tvalid_set's multi_logloss: 0.724397\tvalid_set's macro_f1: 0.600223\n",
      "[100]\tvalid_set's multi_logloss: 0.724397\tvalid_set's macro_f1: 0.600223\n",
      "[150]\tvalid_set's multi_logloss: 0.716144\tvalid_set's macro_f1: 0.598692\n",
      "[150]\tvalid_set's multi_logloss: 0.716144\tvalid_set's macro_f1: 0.598692\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.786819\tvalid_set's macro_f1: 0.586096\n",
      "[100]\tvalid_set's multi_logloss: 0.713991\tvalid_set's macro_f1: 0.589478\n",
      "[100]\tvalid_set's multi_logloss: 0.713991\tvalid_set's macro_f1: 0.589478\n",
      "[150]\tvalid_set's multi_logloss: 0.704855\tvalid_set's macro_f1: 0.592234\n",
      "[150]\tvalid_set's multi_logloss: 0.704855\tvalid_set's macro_f1: 0.592234\n",
      "[200]\tvalid_set's multi_logloss: 0.708682\tvalid_set's macro_f1: 0.592798\n",
      "[200]\tvalid_set's multi_logloss: 0.708682\tvalid_set's macro_f1: 0.592798\n",
      "[250]\tvalid_set's multi_logloss: 0.717116\tvalid_set's macro_f1: 0.593881\n",
      "[250]\tvalid_set's multi_logloss: 0.717116\tvalid_set's macro_f1: 0.593881\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "\t0.5977\t = Validation score   (macro_f1)\n",
      "\t674.29s\t = Training   runtime\n",
      "\t0.99s\t = Validation runtime\n",
      "\t10417.0\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\model.pkl\n",
      "\t0.5977\t = Validation score   (macro_f1)\n",
      "\t674.29s\t = Training   runtime\n",
      "\t0.99s\t = Validation runtime\n",
      "\t10417.0\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_3_BAG_L1 ... Training model for up to 2578.03s of the 7074.38s of remaining time.\n",
      "Fitting model: LightGBM_3_BAG_L1 ... Training model for up to 2578.03s of the 7074.38s of remaining time.\n",
      "\tFitting LightGBM_3_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_3_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.905561\tvalid_set's macro_f1: 0.57311\n",
      "[100]\tvalid_set's multi_logloss: 0.775513\tvalid_set's macro_f1: 0.579556\n",
      "[100]\tvalid_set's multi_logloss: 0.775513\tvalid_set's macro_f1: 0.579556\n",
      "[150]\tvalid_set's multi_logloss: 0.74505\tvalid_set's macro_f1: 0.580356\n",
      "[150]\tvalid_set's multi_logloss: 0.74505\tvalid_set's macro_f1: 0.580356\n",
      "[200]\tvalid_set's multi_logloss: 0.737123\tvalid_set's macro_f1: 0.580043\n",
      "[200]\tvalid_set's multi_logloss: 0.737123\tvalid_set's macro_f1: 0.580043\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.893634\tvalid_set's macro_f1: 0.574752\n",
      "[100]\tvalid_set's multi_logloss: 0.758708\tvalid_set's macro_f1: 0.585638\n",
      "[100]\tvalid_set's multi_logloss: 0.758708\tvalid_set's macro_f1: 0.585638\n",
      "[150]\tvalid_set's multi_logloss: 0.724668\tvalid_set's macro_f1: 0.592991\n",
      "[150]\tvalid_set's multi_logloss: 0.724668\tvalid_set's macro_f1: 0.592991\n",
      "[200]\tvalid_set's multi_logloss: 0.715058\tvalid_set's macro_f1: 0.595876\n",
      "[200]\tvalid_set's multi_logloss: 0.715058\tvalid_set's macro_f1: 0.595876\n",
      "[250]\tvalid_set's multi_logloss: 0.71249\tvalid_set's macro_f1: 0.594854\n",
      "[250]\tvalid_set's multi_logloss: 0.71249\tvalid_set's macro_f1: 0.594854\n",
      "[300]\tvalid_set's multi_logloss: 0.713954\tvalid_set's macro_f1: 0.596178\n",
      "[300]\tvalid_set's multi_logloss: 0.713954\tvalid_set's macro_f1: 0.596178\n",
      "[350]\tvalid_set's multi_logloss: 0.716494\tvalid_set's macro_f1: 0.594202\n",
      "[350]\tvalid_set's multi_logloss: 0.716494\tvalid_set's macro_f1: 0.594202\n",
      "[400]\tvalid_set's multi_logloss: 0.720153\tvalid_set's macro_f1: 0.593268\n",
      "[400]\tvalid_set's multi_logloss: 0.720153\tvalid_set's macro_f1: 0.593268\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.883172\tvalid_set's macro_f1: 0.576091\n",
      "[100]\tvalid_set's multi_logloss: 0.747437\tvalid_set's macro_f1: 0.580498\n",
      "[100]\tvalid_set's multi_logloss: 0.747437\tvalid_set's macro_f1: 0.580498\n",
      "[150]\tvalid_set's multi_logloss: 0.714108\tvalid_set's macro_f1: 0.588123\n",
      "[150]\tvalid_set's multi_logloss: 0.714108\tvalid_set's macro_f1: 0.588123\n",
      "[200]\tvalid_set's multi_logloss: 0.70468\tvalid_set's macro_f1: 0.596071\n",
      "[200]\tvalid_set's multi_logloss: 0.70468\tvalid_set's macro_f1: 0.596071\n",
      "[250]\tvalid_set's multi_logloss: 0.701799\tvalid_set's macro_f1: 0.594113\n",
      "[250]\tvalid_set's multi_logloss: 0.701799\tvalid_set's macro_f1: 0.594113\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.884118\tvalid_set's macro_f1: 0.578148\n",
      "[100]\tvalid_set's multi_logloss: 0.747907\tvalid_set's macro_f1: 0.586808\n",
      "[100]\tvalid_set's multi_logloss: 0.747907\tvalid_set's macro_f1: 0.586808\n",
      "[150]\tvalid_set's multi_logloss: 0.713848\tvalid_set's macro_f1: 0.58781\n",
      "[150]\tvalid_set's multi_logloss: 0.713848\tvalid_set's macro_f1: 0.58781\n",
      "[200]\tvalid_set's multi_logloss: 0.703364\tvalid_set's macro_f1: 0.588424\n",
      "[200]\tvalid_set's multi_logloss: 0.703364\tvalid_set's macro_f1: 0.588424\n",
      "[250]\tvalid_set's multi_logloss: 0.700272\tvalid_set's macro_f1: 0.589967\n",
      "[250]\tvalid_set's multi_logloss: 0.700272\tvalid_set's macro_f1: 0.589967\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.882704\tvalid_set's macro_f1: 0.583664\n",
      "[100]\tvalid_set's multi_logloss: 0.747885\tvalid_set's macro_f1: 0.594428\n",
      "[100]\tvalid_set's multi_logloss: 0.747885\tvalid_set's macro_f1: 0.594428\n",
      "[150]\tvalid_set's multi_logloss: 0.71367\tvalid_set's macro_f1: 0.595365\n",
      "[150]\tvalid_set's multi_logloss: 0.71367\tvalid_set's macro_f1: 0.595365\n",
      "[200]\tvalid_set's multi_logloss: 0.702801\tvalid_set's macro_f1: 0.595393\n",
      "[200]\tvalid_set's multi_logloss: 0.702801\tvalid_set's macro_f1: 0.595393\n",
      "[250]\tvalid_set's multi_logloss: 0.700233\tvalid_set's macro_f1: 0.594397\n",
      "[250]\tvalid_set's multi_logloss: 0.700233\tvalid_set's macro_f1: 0.594397\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.890333\tvalid_set's macro_f1: 0.581925\n",
      "[100]\tvalid_set's multi_logloss: 0.755751\tvalid_set's macro_f1: 0.586861\n",
      "[100]\tvalid_set's multi_logloss: 0.755751\tvalid_set's macro_f1: 0.586861\n",
      "[150]\tvalid_set's multi_logloss: 0.72253\tvalid_set's macro_f1: 0.591898\n",
      "[150]\tvalid_set's multi_logloss: 0.72253\tvalid_set's macro_f1: 0.591898\n",
      "[200]\tvalid_set's multi_logloss: 0.712065\tvalid_set's macro_f1: 0.594994\n",
      "[200]\tvalid_set's multi_logloss: 0.712065\tvalid_set's macro_f1: 0.594994\n",
      "[250]\tvalid_set's multi_logloss: 0.709381\tvalid_set's macro_f1: 0.595411\n",
      "[250]\tvalid_set's multi_logloss: 0.709381\tvalid_set's macro_f1: 0.595411\n",
      "[300]\tvalid_set's multi_logloss: 0.710508\tvalid_set's macro_f1: 0.597647\n",
      "[300]\tvalid_set's multi_logloss: 0.710508\tvalid_set's macro_f1: 0.597647\n",
      "[350]\tvalid_set's multi_logloss: 0.713575\tvalid_set's macro_f1: 0.596655\n",
      "[350]\tvalid_set's multi_logloss: 0.713575\tvalid_set's macro_f1: 0.596655\n",
      "[400]\tvalid_set's multi_logloss: 0.717297\tvalid_set's macro_f1: 0.597651\n",
      "[400]\tvalid_set's multi_logloss: 0.717297\tvalid_set's macro_f1: 0.597651\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.893378\tvalid_set's macro_f1: 0.573149\n",
      "[100]\tvalid_set's multi_logloss: 0.761123\tvalid_set's macro_f1: 0.589237\n",
      "[100]\tvalid_set's multi_logloss: 0.761123\tvalid_set's macro_f1: 0.589237\n",
      "[150]\tvalid_set's multi_logloss: 0.728306\tvalid_set's macro_f1: 0.59544\n",
      "[150]\tvalid_set's multi_logloss: 0.728306\tvalid_set's macro_f1: 0.59544\n",
      "[200]\tvalid_set's multi_logloss: 0.718256\tvalid_set's macro_f1: 0.596498\n",
      "[200]\tvalid_set's multi_logloss: 0.718256\tvalid_set's macro_f1: 0.596498\n",
      "[250]\tvalid_set's multi_logloss: 0.715668\tvalid_set's macro_f1: 0.597014\n",
      "[250]\tvalid_set's multi_logloss: 0.715668\tvalid_set's macro_f1: 0.597014\n",
      "[300]\tvalid_set's multi_logloss: 0.717123\tvalid_set's macro_f1: 0.594151\n",
      "[300]\tvalid_set's multi_logloss: 0.717123\tvalid_set's macro_f1: 0.594151\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.886483\tvalid_set's macro_f1: 0.578237\n",
      "[100]\tvalid_set's multi_logloss: 0.751488\tvalid_set's macro_f1: 0.587942\n",
      "[100]\tvalid_set's multi_logloss: 0.751488\tvalid_set's macro_f1: 0.587942\n",
      "[150]\tvalid_set's multi_logloss: 0.718629\tvalid_set's macro_f1: 0.58747\n",
      "[150]\tvalid_set's multi_logloss: 0.718629\tvalid_set's macro_f1: 0.58747\n",
      "[200]\tvalid_set's multi_logloss: 0.708119\tvalid_set's macro_f1: 0.590812\n",
      "[200]\tvalid_set's multi_logloss: 0.708119\tvalid_set's macro_f1: 0.590812\n",
      "[250]\tvalid_set's multi_logloss: 0.705317\tvalid_set's macro_f1: 0.591426\n",
      "[250]\tvalid_set's multi_logloss: 0.705317\tvalid_set's macro_f1: 0.591426\n",
      "[300]\tvalid_set's multi_logloss: 0.706018\tvalid_set's macro_f1: 0.590707\n",
      "[300]\tvalid_set's multi_logloss: 0.706018\tvalid_set's macro_f1: 0.590707\n",
      "[350]\tvalid_set's multi_logloss: 0.708288\tvalid_set's macro_f1: 0.588146\n",
      "[350]\tvalid_set's multi_logloss: 0.708288\tvalid_set's macro_f1: 0.588146\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.891323\tvalid_set's macro_f1: 0.577504\n",
      "[100]\tvalid_set's multi_logloss: 0.759424\tvalid_set's macro_f1: 0.586367\n",
      "[100]\tvalid_set's multi_logloss: 0.759424\tvalid_set's macro_f1: 0.586367\n",
      "[150]\tvalid_set's multi_logloss: 0.727341\tvalid_set's macro_f1: 0.594015\n",
      "[150]\tvalid_set's multi_logloss: 0.727341\tvalid_set's macro_f1: 0.594015\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.883399\tvalid_set's macro_f1: 0.579217\n",
      "[100]\tvalid_set's multi_logloss: 0.749283\tvalid_set's macro_f1: 0.585152\n",
      "[100]\tvalid_set's multi_logloss: 0.749283\tvalid_set's macro_f1: 0.585152\n",
      "[150]\tvalid_set's multi_logloss: 0.715897\tvalid_set's macro_f1: 0.588201\n",
      "[150]\tvalid_set's multi_logloss: 0.715897\tvalid_set's macro_f1: 0.588201\n",
      "[200]\tvalid_set's multi_logloss: 0.705834\tvalid_set's macro_f1: 0.589284\n",
      "[200]\tvalid_set's multi_logloss: 0.705834\tvalid_set's macro_f1: 0.589284\n",
      "[250]\tvalid_set's multi_logloss: 0.702818\tvalid_set's macro_f1: 0.588611\n",
      "[250]\tvalid_set's multi_logloss: 0.702818\tvalid_set's macro_f1: 0.588611\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\model.pkl\n",
      "\t0.5926\t = Validation score   (macro_f1)\n",
      "\t606.36s\t = Training   runtime\n",
      "\t1.22s\t = Validation runtime\n",
      "\t8392.6\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\model.pkl\n",
      "\t0.5926\t = Validation score   (macro_f1)\n",
      "\t606.36s\t = Training   runtime\n",
      "\t1.22s\t = Validation runtime\n",
      "\t8392.6\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_BAG_L1 ... Training model for up to 1966.24s of the 6462.59s of remaining time.\n",
      "Fitting model: RandomForest_BAG_L1 ... Training model for up to 1966.24s of the 6462.59s of remaining time.\n",
      "\tFitting RandomForest_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\model_template.pkl\n",
      "\t5.04s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "\t5.04s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\model.pkl\n",
      "\t0.5627\t = Validation score   (macro_f1)\n",
      "\t7.23s\t = Training   runtime\n",
      "\t19.28s\t = Validation runtime\n",
      "\t2666.4\t = Inference  throughput (rows/s | 51397 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\model.pkl\n",
      "\t0.5627\t = Validation score   (macro_f1)\n",
      "\t7.23s\t = Training   runtime\n",
      "\t19.28s\t = Validation runtime\n",
      "\t2666.4\t = Inference  throughput (rows/s | 51397 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_2_BAG_L1 ... Training model for up to 1938.80s of the 6435.15s of remaining time.\n",
      "Fitting model: RandomForest_2_BAG_L1 ... Training model for up to 1938.80s of the 6435.15s of remaining time.\n",
      "\tFitting RandomForest_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\model_template.pkl\n",
      "\t5.09s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "\t5.09s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\model.pkl\n",
      "\t0.57\t = Validation score   (macro_f1)\n",
      "\t136.51s\t = Training   runtime\n",
      "\t13.43s\t = Validation runtime\n",
      "\t3825.9\t = Inference  throughput (rows/s | 51397 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\model.pkl\n",
      "\t0.57\t = Validation score   (macro_f1)\n",
      "\t136.51s\t = Training   runtime\n",
      "\t13.43s\t = Validation runtime\n",
      "\t3825.9\t = Inference  throughput (rows/s | 51397 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_BAG_L1 ... Training model for up to 1787.98s of the 6284.32s of remaining time.\n",
      "Fitting model: CatBoost_BAG_L1 ... Training model for up to 1787.98s of the 6284.32s of remaining time.\n",
      "\tFitting CatBoost_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting CatBoost_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1284306\ttest: 2.1305274\tbest: 2.1305274 (0)\ttotal: 390ms\tremaining: 1m 56s\n",
      "20:\tlearn: 1.1662732\ttest: 1.1825700\tbest: 1.1825700 (20)\ttotal: 8.07s\tremaining: 1m 47s\n",
      "20:\tlearn: 1.1662732\ttest: 1.1825700\tbest: 1.1825700 (20)\ttotal: 8.07s\tremaining: 1m 47s\n",
      "40:\tlearn: 0.9506224\ttest: 0.9736538\tbest: 0.9736538 (40)\ttotal: 15.6s\tremaining: 1m 38s\n",
      "40:\tlearn: 0.9506224\ttest: 0.9736538\tbest: 0.9736538 (40)\ttotal: 15.6s\tremaining: 1m 38s\n",
      "60:\tlearn: 0.8694357\ttest: 0.8978517\tbest: 0.8978517 (60)\ttotal: 23s\tremaining: 1m 30s\n",
      "60:\tlearn: 0.8694357\ttest: 0.8978517\tbest: 0.8978517 (60)\ttotal: 23s\tremaining: 1m 30s\n",
      "80:\tlearn: 0.8330036\ttest: 0.8654990\tbest: 0.8654990 (80)\ttotal: 30.5s\tremaining: 1m 22s\n",
      "80:\tlearn: 0.8330036\ttest: 0.8654990\tbest: 0.8654990 (80)\ttotal: 30.5s\tremaining: 1m 22s\n",
      "100:\tlearn: 0.8106929\ttest: 0.8467912\tbest: 0.8467912 (100)\ttotal: 38s\tremaining: 1m 14s\n",
      "100:\tlearn: 0.8106929\ttest: 0.8467912\tbest: 0.8467912 (100)\ttotal: 38s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.7948734\ttest: 0.8347169\tbest: 0.8347169 (120)\ttotal: 45.5s\tremaining: 1m 7s\n",
      "120:\tlearn: 0.7948734\ttest: 0.8347169\tbest: 0.8347169 (120)\ttotal: 45.5s\tremaining: 1m 7s\n",
      "140:\tlearn: 0.7816806\ttest: 0.8247093\tbest: 0.8247093 (140)\ttotal: 52.9s\tremaining: 59.6s\n",
      "140:\tlearn: 0.7816806\ttest: 0.8247093\tbest: 0.8247093 (140)\ttotal: 52.9s\tremaining: 59.6s\n",
      "160:\tlearn: 0.7712654\ttest: 0.8172544\tbest: 0.8172544 (160)\ttotal: 1m\tremaining: 52.1s\n",
      "160:\tlearn: 0.7712654\ttest: 0.8172544\tbest: 0.8172544 (160)\ttotal: 1m\tremaining: 52.1s\n",
      "180:\tlearn: 0.7617110\ttest: 0.8104334\tbest: 0.8104334 (180)\ttotal: 1m 7s\tremaining: 44.6s\n",
      "180:\tlearn: 0.7617110\ttest: 0.8104334\tbest: 0.8104334 (180)\ttotal: 1m 7s\tremaining: 44.6s\n",
      "200:\tlearn: 0.7524849\ttest: 0.8037529\tbest: 0.8037529 (200)\ttotal: 1m 15s\tremaining: 37s\n",
      "200:\tlearn: 0.7524849\ttest: 0.8037529\tbest: 0.8037529 (200)\ttotal: 1m 15s\tremaining: 37s\n",
      "220:\tlearn: 0.7443238\ttest: 0.7983378\tbest: 0.7983378 (220)\ttotal: 1m 22s\tremaining: 29.5s\n",
      "220:\tlearn: 0.7443238\ttest: 0.7983378\tbest: 0.7983378 (220)\ttotal: 1m 22s\tremaining: 29.5s\n",
      "240:\tlearn: 0.7363124\ttest: 0.7927434\tbest: 0.7927434 (240)\ttotal: 1m 30s\tremaining: 22s\n",
      "240:\tlearn: 0.7363124\ttest: 0.7927434\tbest: 0.7927434 (240)\ttotal: 1m 30s\tremaining: 22s\n",
      "260:\tlearn: 0.7300625\ttest: 0.7887102\tbest: 0.7887102 (260)\ttotal: 1m 37s\tremaining: 14.6s\n",
      "260:\tlearn: 0.7300625\ttest: 0.7887102\tbest: 0.7887102 (260)\ttotal: 1m 37s\tremaining: 14.6s\n",
      "280:\tlearn: 0.7240875\ttest: 0.7845443\tbest: 0.7845443 (280)\ttotal: 1m 44s\tremaining: 7.09s\n",
      "280:\tlearn: 0.7240875\ttest: 0.7845443\tbest: 0.7845443 (280)\ttotal: 1m 44s\tremaining: 7.09s\n",
      "299:\tlearn: 0.7194368\ttest: 0.7820240\tbest: 0.7820240 (299)\ttotal: 1m 51s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7820239774\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.7194368\ttest: 0.7820240\tbest: 0.7820240 (299)\ttotal: 1m 51s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7820239774\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1296413\ttest: 2.1303177\tbest: 2.1303177 (0)\ttotal: 378ms\tremaining: 1m 53s\n",
      "20:\tlearn: 1.1688138\ttest: 1.1772355\tbest: 1.1772355 (20)\ttotal: 7.88s\tremaining: 1m 44s\n",
      "20:\tlearn: 1.1688138\ttest: 1.1772355\tbest: 1.1772355 (20)\ttotal: 7.88s\tremaining: 1m 44s\n",
      "40:\tlearn: 0.9534212\ttest: 0.9650011\tbest: 0.9650011 (40)\ttotal: 15.3s\tremaining: 1m 36s\n",
      "40:\tlearn: 0.9534212\ttest: 0.9650011\tbest: 0.9650011 (40)\ttotal: 15.3s\tremaining: 1m 36s\n",
      "60:\tlearn: 0.8742699\ttest: 0.8881686\tbest: 0.8881686 (60)\ttotal: 22.7s\tremaining: 1m 29s\n",
      "60:\tlearn: 0.8742699\ttest: 0.8881686\tbest: 0.8881686 (60)\ttotal: 22.7s\tremaining: 1m 29s\n",
      "80:\tlearn: 0.8361520\ttest: 0.8521128\tbest: 0.8521128 (80)\ttotal: 30.2s\tremaining: 1m 21s\n",
      "80:\tlearn: 0.8361520\ttest: 0.8521128\tbest: 0.8521128 (80)\ttotal: 30.2s\tremaining: 1m 21s\n",
      "100:\tlearn: 0.8134499\ttest: 0.8322078\tbest: 0.8322078 (100)\ttotal: 37.6s\tremaining: 1m 14s\n",
      "100:\tlearn: 0.8134499\ttest: 0.8322078\tbest: 0.8322078 (100)\ttotal: 37.6s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.7953881\ttest: 0.8169587\tbest: 0.8169587 (120)\ttotal: 45.1s\tremaining: 1m 6s\n",
      "120:\tlearn: 0.7953881\ttest: 0.8169587\tbest: 0.8169587 (120)\ttotal: 45.1s\tremaining: 1m 6s\n",
      "140:\tlearn: 0.7829745\ttest: 0.8076566\tbest: 0.8076566 (140)\ttotal: 52.5s\tremaining: 59.2s\n",
      "140:\tlearn: 0.7829745\ttest: 0.8076566\tbest: 0.8076566 (140)\ttotal: 52.5s\tremaining: 59.2s\n",
      "160:\tlearn: 0.7728152\ttest: 0.8003366\tbest: 0.8003366 (160)\ttotal: 1m\tremaining: 51.8s\n",
      "160:\tlearn: 0.7728152\ttest: 0.8003366\tbest: 0.8003366 (160)\ttotal: 1m\tremaining: 51.8s\n",
      "180:\tlearn: 0.7643156\ttest: 0.7945091\tbest: 0.7945091 (180)\ttotal: 1m 7s\tremaining: 44.3s\n",
      "180:\tlearn: 0.7643156\ttest: 0.7945091\tbest: 0.7945091 (180)\ttotal: 1m 7s\tremaining: 44.3s\n",
      "200:\tlearn: 0.7552052\ttest: 0.7885469\tbest: 0.7885469 (200)\ttotal: 1m 14s\tremaining: 36.9s\n",
      "200:\tlearn: 0.7552052\ttest: 0.7885469\tbest: 0.7885469 (200)\ttotal: 1m 14s\tremaining: 36.9s\n",
      "220:\tlearn: 0.7470424\ttest: 0.7829852\tbest: 0.7829852 (220)\ttotal: 1m 22s\tremaining: 29.4s\n",
      "220:\tlearn: 0.7470424\ttest: 0.7829852\tbest: 0.7829852 (220)\ttotal: 1m 22s\tremaining: 29.4s\n",
      "240:\tlearn: 0.7403143\ttest: 0.7783701\tbest: 0.7783701 (240)\ttotal: 1m 29s\tremaining: 22s\n",
      "240:\tlearn: 0.7403143\ttest: 0.7783701\tbest: 0.7783701 (240)\ttotal: 1m 29s\tremaining: 22s\n",
      "260:\tlearn: 0.7337879\ttest: 0.7741150\tbest: 0.7741150 (260)\ttotal: 1m 37s\tremaining: 14.5s\n",
      "260:\tlearn: 0.7337879\ttest: 0.7741150\tbest: 0.7741150 (260)\ttotal: 1m 37s\tremaining: 14.5s\n",
      "280:\tlearn: 0.7280420\ttest: 0.7698624\tbest: 0.7698624 (280)\ttotal: 1m 44s\tremaining: 7.08s\n",
      "280:\tlearn: 0.7280420\ttest: 0.7698624\tbest: 0.7698624 (280)\ttotal: 1m 44s\tremaining: 7.08s\n",
      "299:\tlearn: 0.7234496\ttest: 0.7667691\tbest: 0.7667691 (299)\ttotal: 1m 51s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7667690682\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.7234496\ttest: 0.7667691\tbest: 0.7667691 (299)\ttotal: 1m 51s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7667690682\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1310792\ttest: 2.1278248\tbest: 2.1278248 (0)\ttotal: 378ms\tremaining: 1m 53s\n",
      "20:\tlearn: 1.1744915\ttest: 1.1640069\tbest: 1.1640069 (20)\ttotal: 7.84s\tremaining: 1m 44s\n",
      "20:\tlearn: 1.1744915\ttest: 1.1640069\tbest: 1.1640069 (20)\ttotal: 7.84s\tremaining: 1m 44s\n",
      "40:\tlearn: 0.9574940\ttest: 0.9488463\tbest: 0.9488463 (40)\ttotal: 15.3s\tremaining: 1m 36s\n",
      "40:\tlearn: 0.9574940\ttest: 0.9488463\tbest: 0.9488463 (40)\ttotal: 15.3s\tremaining: 1m 36s\n",
      "60:\tlearn: 0.8772882\ttest: 0.8719028\tbest: 0.8719028 (60)\ttotal: 22.6s\tremaining: 1m 28s\n",
      "60:\tlearn: 0.8772882\ttest: 0.8719028\tbest: 0.8719028 (60)\ttotal: 22.6s\tremaining: 1m 28s\n",
      "80:\tlearn: 0.8389116\ttest: 0.8365306\tbest: 0.8365306 (80)\ttotal: 30s\tremaining: 1m 21s\n",
      "80:\tlearn: 0.8389116\ttest: 0.8365306\tbest: 0.8365306 (80)\ttotal: 30s\tremaining: 1m 21s\n",
      "100:\tlearn: 0.8162866\ttest: 0.8175745\tbest: 0.8175745 (100)\ttotal: 37.4s\tremaining: 1m 13s\n",
      "100:\tlearn: 0.8162866\ttest: 0.8175745\tbest: 0.8175745 (100)\ttotal: 37.4s\tremaining: 1m 13s\n",
      "120:\tlearn: 0.7987140\ttest: 0.8030494\tbest: 0.8030494 (120)\ttotal: 44.8s\tremaining: 1m 6s\n",
      "120:\tlearn: 0.7987140\ttest: 0.8030494\tbest: 0.8030494 (120)\ttotal: 44.8s\tremaining: 1m 6s\n",
      "140:\tlearn: 0.7862378\ttest: 0.7934602\tbest: 0.7934602 (140)\ttotal: 52.2s\tremaining: 58.8s\n",
      "140:\tlearn: 0.7862378\ttest: 0.7934602\tbest: 0.7934602 (140)\ttotal: 52.2s\tremaining: 58.8s\n",
      "160:\tlearn: 0.7760479\ttest: 0.7863148\tbest: 0.7863148 (160)\ttotal: 59.5s\tremaining: 51.4s\n",
      "160:\tlearn: 0.7760479\ttest: 0.7863148\tbest: 0.7863148 (160)\ttotal: 59.5s\tremaining: 51.4s\n",
      "180:\tlearn: 0.7677281\ttest: 0.7808296\tbest: 0.7808296 (180)\ttotal: 1m 6s\tremaining: 44s\n",
      "180:\tlearn: 0.7677281\ttest: 0.7808296\tbest: 0.7808296 (180)\ttotal: 1m 6s\tremaining: 44s\n",
      "200:\tlearn: 0.7591457\ttest: 0.7752692\tbest: 0.7752692 (200)\ttotal: 1m 14s\tremaining: 36.6s\n",
      "200:\tlearn: 0.7591457\ttest: 0.7752692\tbest: 0.7752692 (200)\ttotal: 1m 14s\tremaining: 36.6s\n",
      "220:\tlearn: 0.7516383\ttest: 0.7704280\tbest: 0.7704280 (220)\ttotal: 1m 21s\tremaining: 29.2s\n",
      "220:\tlearn: 0.7516383\ttest: 0.7704280\tbest: 0.7704280 (220)\ttotal: 1m 21s\tremaining: 29.2s\n",
      "240:\tlearn: 0.7445931\ttest: 0.7658141\tbest: 0.7658141 (240)\ttotal: 1m 29s\tremaining: 21.8s\n",
      "240:\tlearn: 0.7445931\ttest: 0.7658141\tbest: 0.7658141 (240)\ttotal: 1m 29s\tremaining: 21.8s\n",
      "260:\tlearn: 0.7380009\ttest: 0.7617307\tbest: 0.7617307 (260)\ttotal: 1m 36s\tremaining: 14.4s\n",
      "260:\tlearn: 0.7380009\ttest: 0.7617307\tbest: 0.7617307 (260)\ttotal: 1m 36s\tremaining: 14.4s\n",
      "280:\tlearn: 0.7319138\ttest: 0.7578097\tbest: 0.7578097 (280)\ttotal: 1m 43s\tremaining: 7.03s\n",
      "280:\tlearn: 0.7319138\ttest: 0.7578097\tbest: 0.7578097 (280)\ttotal: 1m 43s\tremaining: 7.03s\n",
      "299:\tlearn: 0.7269055\ttest: 0.7550625\tbest: 0.7550353 (298)\ttotal: 1m 50s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7550353444\n",
      "bestIteration = 298\n",
      "\n",
      "Shrink model to first 299 iterations.\n",
      "299:\tlearn: 0.7269055\ttest: 0.7550625\tbest: 0.7550353 (298)\ttotal: 1m 50s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7550353444\n",
      "bestIteration = 298\n",
      "\n",
      "Shrink model to first 299 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1295707\ttest: 2.1295694\tbest: 2.1295694 (0)\ttotal: 381ms\tremaining: 1m 53s\n",
      "20:\tlearn: 1.1735085\ttest: 1.1696674\tbest: 1.1696674 (20)\ttotal: 7.84s\tremaining: 1m 44s\n",
      "20:\tlearn: 1.1735085\ttest: 1.1696674\tbest: 1.1696674 (20)\ttotal: 7.84s\tremaining: 1m 44s\n",
      "40:\tlearn: 0.9562542\ttest: 0.9546034\tbest: 0.9546034 (40)\ttotal: 15.2s\tremaining: 1m 36s\n",
      "40:\tlearn: 0.9562542\ttest: 0.9546034\tbest: 0.9546034 (40)\ttotal: 15.2s\tremaining: 1m 36s\n",
      "60:\tlearn: 0.8764416\ttest: 0.8760737\tbest: 0.8760737 (60)\ttotal: 22.6s\tremaining: 1m 28s\n",
      "60:\tlearn: 0.8764416\ttest: 0.8760737\tbest: 0.8760737 (60)\ttotal: 22.6s\tremaining: 1m 28s\n",
      "80:\tlearn: 0.8390858\ttest: 0.8412912\tbest: 0.8412912 (80)\ttotal: 30s\tremaining: 1m 21s\n",
      "80:\tlearn: 0.8390858\ttest: 0.8412912\tbest: 0.8412912 (80)\ttotal: 30s\tremaining: 1m 21s\n",
      "100:\tlearn: 0.8172775\ttest: 0.8216300\tbest: 0.8216300 (100)\ttotal: 37.4s\tremaining: 1m 13s\n",
      "100:\tlearn: 0.8172775\ttest: 0.8216300\tbest: 0.8216300 (100)\ttotal: 37.4s\tremaining: 1m 13s\n",
      "120:\tlearn: 0.7997649\ttest: 0.8070443\tbest: 0.8070443 (120)\ttotal: 44.8s\tremaining: 1m 6s\n",
      "120:\tlearn: 0.7997649\ttest: 0.8070443\tbest: 0.8070443 (120)\ttotal: 44.8s\tremaining: 1m 6s\n",
      "140:\tlearn: 0.7867050\ttest: 0.7968839\tbest: 0.7968839 (140)\ttotal: 52.2s\tremaining: 58.9s\n",
      "140:\tlearn: 0.7867050\ttest: 0.7968839\tbest: 0.7968839 (140)\ttotal: 52.2s\tremaining: 58.9s\n",
      "160:\tlearn: 0.7775273\ttest: 0.7901803\tbest: 0.7901803 (160)\ttotal: 59.7s\tremaining: 51.5s\n",
      "160:\tlearn: 0.7775273\ttest: 0.7901803\tbest: 0.7901803 (160)\ttotal: 59.7s\tremaining: 51.5s\n",
      "180:\tlearn: 0.7679734\ttest: 0.7838536\tbest: 0.7838536 (180)\ttotal: 1m 7s\tremaining: 44.1s\n",
      "180:\tlearn: 0.7679734\ttest: 0.7838536\tbest: 0.7838536 (180)\ttotal: 1m 7s\tremaining: 44.1s\n",
      "200:\tlearn: 0.7599080\ttest: 0.7784890\tbest: 0.7784890 (200)\ttotal: 1m 14s\tremaining: 36.7s\n",
      "200:\tlearn: 0.7599080\ttest: 0.7784890\tbest: 0.7784890 (200)\ttotal: 1m 14s\tremaining: 36.7s\n",
      "220:\tlearn: 0.7517674\ttest: 0.7730353\tbest: 0.7730353 (220)\ttotal: 1m 21s\tremaining: 29.3s\n",
      "220:\tlearn: 0.7517674\ttest: 0.7730353\tbest: 0.7730353 (220)\ttotal: 1m 21s\tremaining: 29.3s\n",
      "240:\tlearn: 0.7437191\ttest: 0.7672973\tbest: 0.7672973 (240)\ttotal: 1m 29s\tremaining: 21.9s\n",
      "240:\tlearn: 0.7437191\ttest: 0.7672973\tbest: 0.7672973 (240)\ttotal: 1m 29s\tremaining: 21.9s\n",
      "260:\tlearn: 0.7369942\ttest: 0.7628696\tbest: 0.7628696 (260)\ttotal: 1m 36s\tremaining: 14.5s\n",
      "260:\tlearn: 0.7369942\ttest: 0.7628696\tbest: 0.7628696 (260)\ttotal: 1m 36s\tremaining: 14.5s\n",
      "280:\tlearn: 0.7307438\ttest: 0.7591218\tbest: 0.7591218 (280)\ttotal: 1m 44s\tremaining: 7.04s\n",
      "280:\tlearn: 0.7307438\ttest: 0.7591218\tbest: 0.7591218 (280)\ttotal: 1m 44s\tremaining: 7.04s\n",
      "299:\tlearn: 0.7246296\ttest: 0.7550700\tbest: 0.7550700 (299)\ttotal: 1m 51s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7550699638\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.7246296\ttest: 0.7550700\tbest: 0.7550700 (299)\ttotal: 1m 51s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7550699638\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1179937\ttest: 2.1179986\tbest: 2.1179986 (0)\ttotal: 390ms\tremaining: 1m 56s\n",
      "20:\tlearn: 1.1730663\ttest: 1.1751416\tbest: 1.1751416 (20)\ttotal: 7.87s\tremaining: 1m 44s\n",
      "20:\tlearn: 1.1730663\ttest: 1.1751416\tbest: 1.1751416 (20)\ttotal: 7.87s\tremaining: 1m 44s\n",
      "40:\tlearn: 0.9578061\ttest: 0.9581168\tbest: 0.9581168 (40)\ttotal: 15.3s\tremaining: 1m 36s\n",
      "40:\tlearn: 0.9578061\ttest: 0.9581168\tbest: 0.9581168 (40)\ttotal: 15.3s\tremaining: 1m 36s\n",
      "60:\tlearn: 0.8775711\ttest: 0.8765534\tbest: 0.8765534 (60)\ttotal: 22.8s\tremaining: 1m 29s\n",
      "60:\tlearn: 0.8775711\ttest: 0.8765534\tbest: 0.8765534 (60)\ttotal: 22.8s\tremaining: 1m 29s\n",
      "80:\tlearn: 0.8402164\ttest: 0.8408570\tbest: 0.8408570 (80)\ttotal: 30.2s\tremaining: 1m 21s\n",
      "80:\tlearn: 0.8402164\ttest: 0.8408570\tbest: 0.8408570 (80)\ttotal: 30.2s\tremaining: 1m 21s\n",
      "100:\tlearn: 0.8190767\ttest: 0.8213991\tbest: 0.8213991 (100)\ttotal: 37.7s\tremaining: 1m 14s\n",
      "100:\tlearn: 0.8190767\ttest: 0.8213991\tbest: 0.8213991 (100)\ttotal: 37.7s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.8009432\ttest: 0.8056614\tbest: 0.8056614 (120)\ttotal: 45.1s\tremaining: 1m 6s\n",
      "120:\tlearn: 0.8009432\ttest: 0.8056614\tbest: 0.8056614 (120)\ttotal: 45.1s\tremaining: 1m 6s\n",
      "140:\tlearn: 0.7883614\ttest: 0.7963618\tbest: 0.7963618 (140)\ttotal: 52.6s\tremaining: 59.3s\n",
      "140:\tlearn: 0.7883614\ttest: 0.7963618\tbest: 0.7963618 (140)\ttotal: 52.6s\tremaining: 59.3s\n",
      "160:\tlearn: 0.7771577\ttest: 0.7878524\tbest: 0.7878524 (160)\ttotal: 60s\tremaining: 51.8s\n",
      "160:\tlearn: 0.7771577\ttest: 0.7878524\tbest: 0.7878524 (160)\ttotal: 60s\tremaining: 51.8s\n",
      "180:\tlearn: 0.7676237\ttest: 0.7812906\tbest: 0.7812906 (180)\ttotal: 1m 7s\tremaining: 44.3s\n",
      "180:\tlearn: 0.7676237\ttest: 0.7812906\tbest: 0.7812906 (180)\ttotal: 1m 7s\tremaining: 44.3s\n",
      "200:\tlearn: 0.7585910\ttest: 0.7750726\tbest: 0.7750726 (200)\ttotal: 1m 14s\tremaining: 36.9s\n",
      "200:\tlearn: 0.7585910\ttest: 0.7750726\tbest: 0.7750726 (200)\ttotal: 1m 14s\tremaining: 36.9s\n",
      "220:\tlearn: 0.7500103\ttest: 0.7684704\tbest: 0.7684704 (220)\ttotal: 1m 22s\tremaining: 29.4s\n",
      "220:\tlearn: 0.7500103\ttest: 0.7684704\tbest: 0.7684704 (220)\ttotal: 1m 22s\tremaining: 29.4s\n",
      "240:\tlearn: 0.7421772\ttest: 0.7629800\tbest: 0.7629800 (240)\ttotal: 1m 29s\tremaining: 22s\n",
      "240:\tlearn: 0.7421772\ttest: 0.7629800\tbest: 0.7629800 (240)\ttotal: 1m 29s\tremaining: 22s\n",
      "260:\tlearn: 0.7358341\ttest: 0.7586997\tbest: 0.7586997 (260)\ttotal: 1m 37s\tremaining: 14.5s\n",
      "260:\tlearn: 0.7358341\ttest: 0.7586997\tbest: 0.7586997 (260)\ttotal: 1m 37s\tremaining: 14.5s\n",
      "280:\tlearn: 0.7295795\ttest: 0.7548383\tbest: 0.7548383 (280)\ttotal: 1m 44s\tremaining: 7.07s\n",
      "280:\tlearn: 0.7295795\ttest: 0.7548383\tbest: 0.7548383 (280)\ttotal: 1m 44s\tremaining: 7.07s\n",
      "299:\tlearn: 0.7247181\ttest: 0.7516180\tbest: 0.7516180 (299)\ttotal: 1m 51s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7516180315\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.7247181\ttest: 0.7516180\tbest: 0.7516180 (299)\ttotal: 1m 51s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7516180315\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1299465\ttest: 2.1299502\tbest: 2.1299502 (0)\ttotal: 381ms\tremaining: 1m 54s\n",
      "20:\tlearn: 1.1711388\ttest: 1.1731658\tbest: 1.1731658 (20)\ttotal: 7.9s\tremaining: 1m 44s\n",
      "20:\tlearn: 1.1711388\ttest: 1.1731658\tbest: 1.1731658 (20)\ttotal: 7.9s\tremaining: 1m 44s\n",
      "40:\tlearn: 0.9575271\ttest: 0.9630125\tbest: 0.9630125 (40)\ttotal: 15.4s\tremaining: 1m 37s\n",
      "40:\tlearn: 0.9575271\ttest: 0.9630125\tbest: 0.9630125 (40)\ttotal: 15.4s\tremaining: 1m 37s\n",
      "60:\tlearn: 0.8768550\ttest: 0.8862492\tbest: 0.8862492 (60)\ttotal: 22.8s\tremaining: 1m 29s\n",
      "60:\tlearn: 0.8768550\ttest: 0.8862492\tbest: 0.8862492 (60)\ttotal: 22.8s\tremaining: 1m 29s\n",
      "80:\tlearn: 0.8383927\ttest: 0.8511327\tbest: 0.8511327 (80)\ttotal: 30.3s\tremaining: 1m 21s\n",
      "80:\tlearn: 0.8383927\ttest: 0.8511327\tbest: 0.8511327 (80)\ttotal: 30.3s\tremaining: 1m 21s\n",
      "100:\tlearn: 0.8155778\ttest: 0.8313342\tbest: 0.8313342 (100)\ttotal: 37.8s\tremaining: 1m 14s\n",
      "100:\tlearn: 0.8155778\ttest: 0.8313342\tbest: 0.8313342 (100)\ttotal: 37.8s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.7990322\ttest: 0.8175669\tbest: 0.8175669 (120)\ttotal: 45.3s\tremaining: 1m 7s\n",
      "120:\tlearn: 0.7990322\ttest: 0.8175669\tbest: 0.8175669 (120)\ttotal: 45.3s\tremaining: 1m 7s\n",
      "140:\tlearn: 0.7849503\ttest: 0.8063207\tbest: 0.8063207 (140)\ttotal: 52.8s\tremaining: 59.6s\n",
      "140:\tlearn: 0.7849503\ttest: 0.8063207\tbest: 0.8063207 (140)\ttotal: 52.8s\tremaining: 59.6s\n",
      "160:\tlearn: 0.7754212\ttest: 0.7996792\tbest: 0.7996792 (160)\ttotal: 1m\tremaining: 52.1s\n",
      "160:\tlearn: 0.7754212\ttest: 0.7996792\tbest: 0.7996792 (160)\ttotal: 1m\tremaining: 52.1s\n",
      "180:\tlearn: 0.7670048\ttest: 0.7936724\tbest: 0.7936724 (180)\ttotal: 1m 7s\tremaining: 44.6s\n",
      "180:\tlearn: 0.7670048\ttest: 0.7936724\tbest: 0.7936724 (180)\ttotal: 1m 7s\tremaining: 44.6s\n",
      "200:\tlearn: 0.7568913\ttest: 0.7864361\tbest: 0.7864361 (200)\ttotal: 1m 15s\tremaining: 37.1s\n",
      "200:\tlearn: 0.7568913\ttest: 0.7864361\tbest: 0.7864361 (200)\ttotal: 1m 15s\tremaining: 37.1s\n",
      "220:\tlearn: 0.7497912\ttest: 0.7816544\tbest: 0.7816544 (220)\ttotal: 1m 22s\tremaining: 29.6s\n",
      "220:\tlearn: 0.7497912\ttest: 0.7816544\tbest: 0.7816544 (220)\ttotal: 1m 22s\tremaining: 29.6s\n",
      "240:\tlearn: 0.7423514\ttest: 0.7765834\tbest: 0.7765834 (240)\ttotal: 1m 30s\tremaining: 22.1s\n",
      "240:\tlearn: 0.7423514\ttest: 0.7765834\tbest: 0.7765834 (240)\ttotal: 1m 30s\tremaining: 22.1s\n",
      "260:\tlearn: 0.7359017\ttest: 0.7721256\tbest: 0.7721256 (260)\ttotal: 1m 37s\tremaining: 14.6s\n",
      "260:\tlearn: 0.7359017\ttest: 0.7721256\tbest: 0.7721256 (260)\ttotal: 1m 37s\tremaining: 14.6s\n",
      "280:\tlearn: 0.7303399\ttest: 0.7685651\tbest: 0.7685651 (280)\ttotal: 1m 45s\tremaining: 7.11s\n",
      "280:\tlearn: 0.7303399\ttest: 0.7685651\tbest: 0.7685651 (280)\ttotal: 1m 45s\tremaining: 7.11s\n",
      "299:\tlearn: 0.7256045\ttest: 0.7655982\tbest: 0.7655982 (299)\ttotal: 1m 52s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7655982048\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.7256045\ttest: 0.7655982\tbest: 0.7655982 (299)\ttotal: 1m 52s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7655982048\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1284172\ttest: 2.1313351\tbest: 2.1313351 (0)\ttotal: 386ms\tremaining: 1m 55s\n",
      "20:\tlearn: 1.1685337\ttest: 1.1768638\tbest: 1.1768638 (20)\ttotal: 7.89s\tremaining: 1m 44s\n",
      "20:\tlearn: 1.1685337\ttest: 1.1768638\tbest: 1.1768638 (20)\ttotal: 7.89s\tremaining: 1m 44s\n",
      "40:\tlearn: 0.9536970\ttest: 0.9653814\tbest: 0.9653814 (40)\ttotal: 15.4s\tremaining: 1m 37s\n",
      "40:\tlearn: 0.9536970\ttest: 0.9653814\tbest: 0.9653814 (40)\ttotal: 15.4s\tremaining: 1m 37s\n",
      "60:\tlearn: 0.8739695\ttest: 0.8883471\tbest: 0.8883471 (60)\ttotal: 22.9s\tremaining: 1m 29s\n",
      "60:\tlearn: 0.8739695\ttest: 0.8883471\tbest: 0.8883471 (60)\ttotal: 22.9s\tremaining: 1m 29s\n",
      "80:\tlearn: 0.8354812\ttest: 0.8531721\tbest: 0.8531721 (80)\ttotal: 30.4s\tremaining: 1m 22s\n",
      "80:\tlearn: 0.8354812\ttest: 0.8531721\tbest: 0.8531721 (80)\ttotal: 30.4s\tremaining: 1m 22s\n",
      "100:\tlearn: 0.8124417\ttest: 0.8334031\tbest: 0.8334031 (100)\ttotal: 37.8s\tremaining: 1m 14s\n",
      "100:\tlearn: 0.8124417\ttest: 0.8334031\tbest: 0.8334031 (100)\ttotal: 37.8s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.7945654\ttest: 0.8189600\tbest: 0.8189600 (120)\ttotal: 45.3s\tremaining: 1m 7s\n",
      "120:\tlearn: 0.7945654\ttest: 0.8189600\tbest: 0.8189600 (120)\ttotal: 45.3s\tremaining: 1m 7s\n",
      "140:\tlearn: 0.7815358\ttest: 0.8090603\tbest: 0.8090603 (140)\ttotal: 52.8s\tremaining: 59.5s\n",
      "140:\tlearn: 0.7815358\ttest: 0.8090603\tbest: 0.8090603 (140)\ttotal: 52.8s\tremaining: 59.5s\n",
      "160:\tlearn: 0.7714763\ttest: 0.8024611\tbest: 0.8024611 (160)\ttotal: 1m\tremaining: 52s\n",
      "160:\tlearn: 0.7714763\ttest: 0.8024611\tbest: 0.8024611 (160)\ttotal: 1m\tremaining: 52s\n",
      "180:\tlearn: 0.7618627\ttest: 0.7956952\tbest: 0.7956952 (180)\ttotal: 1m 7s\tremaining: 44.5s\n",
      "180:\tlearn: 0.7618627\ttest: 0.7956952\tbest: 0.7956952 (180)\ttotal: 1m 7s\tremaining: 44.5s\n",
      "200:\tlearn: 0.7540039\ttest: 0.7904853\tbest: 0.7904853 (200)\ttotal: 1m 15s\tremaining: 37s\n",
      "200:\tlearn: 0.7540039\ttest: 0.7904853\tbest: 0.7904853 (200)\ttotal: 1m 15s\tremaining: 37s\n",
      "220:\tlearn: 0.7456869\ttest: 0.7848348\tbest: 0.7848348 (220)\ttotal: 1m 22s\tremaining: 29.5s\n",
      "220:\tlearn: 0.7456869\ttest: 0.7848348\tbest: 0.7848348 (220)\ttotal: 1m 22s\tremaining: 29.5s\n",
      "240:\tlearn: 0.7379532\ttest: 0.7794974\tbest: 0.7794974 (240)\ttotal: 1m 30s\tremaining: 22s\n",
      "240:\tlearn: 0.7379532\ttest: 0.7794974\tbest: 0.7794974 (240)\ttotal: 1m 30s\tremaining: 22s\n",
      "260:\tlearn: 0.7321046\ttest: 0.7759347\tbest: 0.7759347 (260)\ttotal: 1m 37s\tremaining: 14.6s\n",
      "260:\tlearn: 0.7321046\ttest: 0.7759347\tbest: 0.7759347 (260)\ttotal: 1m 37s\tremaining: 14.6s\n",
      "280:\tlearn: 0.7259576\ttest: 0.7721853\tbest: 0.7721853 (280)\ttotal: 1m 44s\tremaining: 7.09s\n",
      "280:\tlearn: 0.7259576\ttest: 0.7721853\tbest: 0.7721853 (280)\ttotal: 1m 44s\tremaining: 7.09s\n",
      "299:\tlearn: 0.7206916\ttest: 0.7689427\tbest: 0.7689427 (299)\ttotal: 1m 52s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7689426576\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.7206916\ttest: 0.7689427\tbest: 0.7689427 (299)\ttotal: 1m 52s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7689426576\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1303422\ttest: 2.1301028\tbest: 2.1301028 (0)\ttotal: 388ms\tremaining: 1m 55s\n",
      "20:\tlearn: 1.1722904\ttest: 1.1702888\tbest: 1.1702888 (20)\ttotal: 7.9s\tremaining: 1m 44s\n",
      "20:\tlearn: 1.1722904\ttest: 1.1702888\tbest: 1.1702888 (20)\ttotal: 7.9s\tremaining: 1m 44s\n",
      "40:\tlearn: 0.9564462\ttest: 0.9574622\tbest: 0.9574622 (40)\ttotal: 15.4s\tremaining: 1m 37s\n",
      "40:\tlearn: 0.9564462\ttest: 0.9574622\tbest: 0.9574622 (40)\ttotal: 15.4s\tremaining: 1m 37s\n",
      "60:\tlearn: 0.8755756\ttest: 0.8798934\tbest: 0.8798934 (60)\ttotal: 22.9s\tremaining: 1m 29s\n",
      "60:\tlearn: 0.8755756\ttest: 0.8798934\tbest: 0.8798934 (60)\ttotal: 22.9s\tremaining: 1m 29s\n",
      "80:\tlearn: 0.8397296\ttest: 0.8472645\tbest: 0.8472645 (80)\ttotal: 30.4s\tremaining: 1m 22s\n",
      "80:\tlearn: 0.8397296\ttest: 0.8472645\tbest: 0.8472645 (80)\ttotal: 30.4s\tremaining: 1m 22s\n",
      "100:\tlearn: 0.8168000\ttest: 0.8274662\tbest: 0.8274662 (100)\ttotal: 37.9s\tremaining: 1m 14s\n",
      "100:\tlearn: 0.8168000\ttest: 0.8274662\tbest: 0.8274662 (100)\ttotal: 37.9s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.7979827\ttest: 0.8114509\tbest: 0.8114509 (120)\ttotal: 45.4s\tremaining: 1m 7s\n",
      "120:\tlearn: 0.7979827\ttest: 0.8114509\tbest: 0.8114509 (120)\ttotal: 45.4s\tremaining: 1m 7s\n",
      "140:\tlearn: 0.7854405\ttest: 0.8019726\tbest: 0.8019726 (140)\ttotal: 52.9s\tremaining: 59.7s\n",
      "140:\tlearn: 0.7854405\ttest: 0.8019726\tbest: 0.8019726 (140)\ttotal: 52.9s\tremaining: 59.7s\n",
      "160:\tlearn: 0.7748032\ttest: 0.7943346\tbest: 0.7943346 (160)\ttotal: 1m\tremaining: 52.2s\n",
      "160:\tlearn: 0.7748032\ttest: 0.7943346\tbest: 0.7943346 (160)\ttotal: 1m\tremaining: 52.2s\n",
      "180:\tlearn: 0.7656560\ttest: 0.7874743\tbest: 0.7874743 (180)\ttotal: 1m 7s\tremaining: 44.7s\n",
      "180:\tlearn: 0.7656560\ttest: 0.7874743\tbest: 0.7874743 (180)\ttotal: 1m 7s\tremaining: 44.7s\n",
      "200:\tlearn: 0.7567193\ttest: 0.7812277\tbest: 0.7812277 (200)\ttotal: 1m 15s\tremaining: 37.2s\n",
      "200:\tlearn: 0.7567193\ttest: 0.7812277\tbest: 0.7812277 (200)\ttotal: 1m 15s\tremaining: 37.2s\n",
      "220:\tlearn: 0.7497770\ttest: 0.7766914\tbest: 0.7766914 (220)\ttotal: 1m 23s\tremaining: 29.7s\n",
      "220:\tlearn: 0.7497770\ttest: 0.7766914\tbest: 0.7766914 (220)\ttotal: 1m 23s\tremaining: 29.7s\n",
      "240:\tlearn: 0.7412815\ttest: 0.7705073\tbest: 0.7705073 (240)\ttotal: 1m 30s\tremaining: 22.2s\n",
      "240:\tlearn: 0.7412815\ttest: 0.7705073\tbest: 0.7705073 (240)\ttotal: 1m 30s\tremaining: 22.2s\n",
      "260:\tlearn: 0.7350329\ttest: 0.7664014\tbest: 0.7664014 (260)\ttotal: 1m 38s\tremaining: 14.7s\n",
      "260:\tlearn: 0.7350329\ttest: 0.7664014\tbest: 0.7664014 (260)\ttotal: 1m 38s\tremaining: 14.7s\n",
      "280:\tlearn: 0.7294591\ttest: 0.7631765\tbest: 0.7631765 (280)\ttotal: 1m 45s\tremaining: 7.14s\n",
      "280:\tlearn: 0.7294591\ttest: 0.7631765\tbest: 0.7631765 (280)\ttotal: 1m 45s\tremaining: 7.14s\n",
      "299:\tlearn: 0.7251722\ttest: 0.7608282\tbest: 0.7608282 (299)\ttotal: 1m 52s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7608282022\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.7251722\ttest: 0.7608282\tbest: 0.7608282 (299)\ttotal: 1m 52s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7608282022\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1293122\ttest: 2.1295721\tbest: 2.1295721 (0)\ttotal: 397ms\tremaining: 1m 58s\n",
      "20:\tlearn: 1.1714345\ttest: 1.1776270\tbest: 1.1776270 (20)\ttotal: 7.97s\tremaining: 1m 45s\n",
      "20:\tlearn: 1.1714345\ttest: 1.1776270\tbest: 1.1776270 (20)\ttotal: 7.97s\tremaining: 1m 45s\n",
      "40:\tlearn: 0.9548630\ttest: 0.9637203\tbest: 0.9637203 (40)\ttotal: 15.5s\tremaining: 1m 37s\n",
      "40:\tlearn: 0.9548630\ttest: 0.9637203\tbest: 0.9637203 (40)\ttotal: 15.5s\tremaining: 1m 37s\n",
      "60:\tlearn: 0.8747053\ttest: 0.8841546\tbest: 0.8841546 (60)\ttotal: 23s\tremaining: 1m 30s\n",
      "60:\tlearn: 0.8747053\ttest: 0.8841546\tbest: 0.8841546 (60)\ttotal: 23s\tremaining: 1m 30s\n",
      "80:\tlearn: 0.8366584\ttest: 0.8482638\tbest: 0.8482638 (80)\ttotal: 30.5s\tremaining: 1m 22s\n",
      "80:\tlearn: 0.8366584\ttest: 0.8482638\tbest: 0.8482638 (80)\ttotal: 30.5s\tremaining: 1m 22s\n",
      "100:\tlearn: 0.8144343\ttest: 0.8285590\tbest: 0.8285590 (100)\ttotal: 38s\tremaining: 1m 14s\n",
      "100:\tlearn: 0.8144343\ttest: 0.8285590\tbest: 0.8285590 (100)\ttotal: 38s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.7959802\ttest: 0.8130074\tbest: 0.8130074 (120)\ttotal: 45.5s\tremaining: 1m 7s\n",
      "120:\tlearn: 0.7959802\ttest: 0.8130074\tbest: 0.8130074 (120)\ttotal: 45.5s\tremaining: 1m 7s\n",
      "140:\tlearn: 0.7844293\ttest: 0.8041902\tbest: 0.8041902 (140)\ttotal: 53s\tremaining: 59.8s\n",
      "140:\tlearn: 0.7844293\ttest: 0.8041902\tbest: 0.8041902 (140)\ttotal: 53s\tremaining: 59.8s\n",
      "160:\tlearn: 0.7749357\ttest: 0.7976024\tbest: 0.7976024 (160)\ttotal: 1m\tremaining: 52.3s\n",
      "160:\tlearn: 0.7749357\ttest: 0.7976024\tbest: 0.7976024 (160)\ttotal: 1m\tremaining: 52.3s\n",
      "180:\tlearn: 0.7660708\ttest: 0.7917200\tbest: 0.7917200 (180)\ttotal: 1m 8s\tremaining: 44.7s\n",
      "180:\tlearn: 0.7660708\ttest: 0.7917200\tbest: 0.7917200 (180)\ttotal: 1m 8s\tremaining: 44.7s\n",
      "200:\tlearn: 0.7574961\ttest: 0.7863807\tbest: 0.7863807 (200)\ttotal: 1m 15s\tremaining: 37.2s\n",
      "200:\tlearn: 0.7574961\ttest: 0.7863807\tbest: 0.7863807 (200)\ttotal: 1m 15s\tremaining: 37.2s\n",
      "220:\tlearn: 0.7483480\ttest: 0.7801622\tbest: 0.7801622 (220)\ttotal: 1m 22s\tremaining: 29.6s\n",
      "220:\tlearn: 0.7483480\ttest: 0.7801622\tbest: 0.7801622 (220)\ttotal: 1m 22s\tremaining: 29.6s\n",
      "240:\tlearn: 0.7413582\ttest: 0.7754774\tbest: 0.7754774 (240)\ttotal: 1m 30s\tremaining: 22.1s\n",
      "240:\tlearn: 0.7413582\ttest: 0.7754774\tbest: 0.7754774 (240)\ttotal: 1m 30s\tremaining: 22.1s\n",
      "260:\tlearn: 0.7336303\ttest: 0.7700196\tbest: 0.7700196 (260)\ttotal: 1m 37s\tremaining: 14.6s\n",
      "260:\tlearn: 0.7336303\ttest: 0.7700196\tbest: 0.7700196 (260)\ttotal: 1m 37s\tremaining: 14.6s\n",
      "280:\tlearn: 0.7288008\ttest: 0.7673802\tbest: 0.7673802 (280)\ttotal: 1m 45s\tremaining: 7.12s\n",
      "280:\tlearn: 0.7288008\ttest: 0.7673802\tbest: 0.7673802 (280)\ttotal: 1m 45s\tremaining: 7.12s\n",
      "299:\tlearn: 0.7239355\ttest: 0.7643823\tbest: 0.7643823 (299)\ttotal: 1m 52s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7643823486\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.7239355\ttest: 0.7643823\tbest: 0.7643823 (299)\ttotal: 1m 52s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7643823486\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1296844\ttest: 2.1281200\tbest: 2.1281200 (0)\ttotal: 387ms\tremaining: 1m 55s\n",
      "20:\tlearn: 1.1698529\ttest: 1.1688480\tbest: 1.1688480 (20)\ttotal: 7.96s\tremaining: 1m 45s\n",
      "20:\tlearn: 1.1698529\ttest: 1.1688480\tbest: 1.1688480 (20)\ttotal: 7.96s\tremaining: 1m 45s\n",
      "40:\tlearn: 0.9576794\ttest: 0.9562504\tbest: 0.9562504 (40)\ttotal: 15.5s\tremaining: 1m 38s\n",
      "40:\tlearn: 0.9576794\ttest: 0.9562504\tbest: 0.9562504 (40)\ttotal: 15.5s\tremaining: 1m 38s\n",
      "60:\tlearn: 0.8774492\ttest: 0.8767863\tbest: 0.8767863 (60)\ttotal: 23.1s\tremaining: 1m 30s\n",
      "60:\tlearn: 0.8774492\ttest: 0.8767863\tbest: 0.8767863 (60)\ttotal: 23.1s\tremaining: 1m 30s\n",
      "80:\tlearn: 0.8395027\ttest: 0.8410061\tbest: 0.8410061 (80)\ttotal: 30.6s\tremaining: 1m 22s\n",
      "80:\tlearn: 0.8395027\ttest: 0.8410061\tbest: 0.8410061 (80)\ttotal: 30.6s\tremaining: 1m 22s\n",
      "100:\tlearn: 0.8156435\ttest: 0.8199054\tbest: 0.8199054 (100)\ttotal: 38.2s\tremaining: 1m 15s\n",
      "100:\tlearn: 0.8156435\ttest: 0.8199054\tbest: 0.8199054 (100)\ttotal: 38.2s\tremaining: 1m 15s\n",
      "120:\tlearn: 0.7990424\ttest: 0.8054282\tbest: 0.8054282 (120)\ttotal: 45.8s\tremaining: 1m 7s\n",
      "120:\tlearn: 0.7990424\ttest: 0.8054282\tbest: 0.8054282 (120)\ttotal: 45.8s\tremaining: 1m 7s\n",
      "140:\tlearn: 0.7863446\ttest: 0.7958980\tbest: 0.7958980 (140)\ttotal: 53.3s\tremaining: 1m\n",
      "140:\tlearn: 0.7863446\ttest: 0.7958980\tbest: 0.7958980 (140)\ttotal: 53.3s\tremaining: 1m\n",
      "160:\tlearn: 0.7771785\ttest: 0.7899545\tbest: 0.7899545 (160)\ttotal: 1m\tremaining: 52.5s\n",
      "160:\tlearn: 0.7771785\ttest: 0.7899545\tbest: 0.7899545 (160)\ttotal: 1m\tremaining: 52.5s\n",
      "180:\tlearn: 0.7672887\ttest: 0.7828880\tbest: 0.7828880 (180)\ttotal: 1m 8s\tremaining: 45s\n",
      "180:\tlearn: 0.7672887\ttest: 0.7828880\tbest: 0.7828880 (180)\ttotal: 1m 8s\tremaining: 45s\n",
      "200:\tlearn: 0.7595675\ttest: 0.7777168\tbest: 0.7777168 (200)\ttotal: 1m 15s\tremaining: 37.4s\n",
      "200:\tlearn: 0.7595675\ttest: 0.7777168\tbest: 0.7777168 (200)\ttotal: 1m 15s\tremaining: 37.4s\n",
      "220:\tlearn: 0.7514698\ttest: 0.7724091\tbest: 0.7724091 (220)\ttotal: 1m 23s\tremaining: 29.8s\n",
      "220:\tlearn: 0.7514698\ttest: 0.7724091\tbest: 0.7724091 (220)\ttotal: 1m 23s\tremaining: 29.8s\n",
      "240:\tlearn: 0.7434419\ttest: 0.7668291\tbest: 0.7668291 (240)\ttotal: 1m 31s\tremaining: 22.3s\n",
      "240:\tlearn: 0.7434419\ttest: 0.7668291\tbest: 0.7668291 (240)\ttotal: 1m 31s\tremaining: 22.3s\n",
      "260:\tlearn: 0.7360207\ttest: 0.7614904\tbest: 0.7614904 (260)\ttotal: 1m 38s\tremaining: 14.7s\n",
      "260:\tlearn: 0.7360207\ttest: 0.7614904\tbest: 0.7614904 (260)\ttotal: 1m 38s\tremaining: 14.7s\n",
      "280:\tlearn: 0.7305055\ttest: 0.7585227\tbest: 0.7585227 (280)\ttotal: 1m 46s\tremaining: 7.18s\n",
      "280:\tlearn: 0.7305055\ttest: 0.7585227\tbest: 0.7585227 (280)\ttotal: 1m 46s\tremaining: 7.18s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\model.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\model.pkl\n",
      "\t0.5658\t = Validation score   (macro_f1)\n",
      "\t1130.62s\t = Training   runtime\n",
      "\t0.29s\t = Validation runtime\n",
      "\t35620.9\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "\t0.5658\t = Validation score   (macro_f1)\n",
      "\t1130.62s\t = Training   runtime\n",
      "\t0.29s\t = Validation runtime\n",
      "\t35620.9\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_2_BAG_L1 ... Training model for up to 655.14s of the 5151.48s of remaining time.\n",
      "Fitting model: CatBoost_2_BAG_L1 ... Training model for up to 655.14s of the 5151.48s of remaining time.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "299:\tlearn: 0.7253927\ttest: 0.7554312\tbest: 0.7554312 (299)\ttotal: 1m 53s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7554312432\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting CatBoost_2_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1948879\ttest: 2.1963935\tbest: 2.1963935 (0)\ttotal: 951ms\tremaining: 7m 54s\n",
      "20:\tlearn: 1.3532563\ttest: 1.3679933\tbest: 1.3679933 (20)\ttotal: 22.5s\tremaining: 8m 33s\n",
      "20:\tlearn: 1.3532563\ttest: 1.3679933\tbest: 1.3679933 (20)\ttotal: 22.5s\tremaining: 8m 33s\n",
      "40:\tlearn: 1.0859384\ttest: 1.1080751\tbest: 1.1080751 (40)\ttotal: 45.3s\tremaining: 8m 26s\n",
      "40:\tlearn: 1.0859384\ttest: 1.1080751\tbest: 1.1080751 (40)\ttotal: 45.3s\tremaining: 8m 26s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 45.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.077496968\n",
      "bestIteration = 44\n",
      "\n",
      "Shrink model to first 45 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1951291\ttest: 2.1960328\tbest: 2.1960328 (0)\ttotal: 1.16s\tremaining: 9m 36s\n",
      "20:\tlearn: 1.3510971\ttest: 1.3590654\tbest: 1.3590654 (20)\ttotal: 23.5s\tremaining: 8m 56s\n",
      "20:\tlearn: 1.3510971\ttest: 1.3590654\tbest: 1.3590654 (20)\ttotal: 23.5s\tremaining: 8m 56s\n",
      "40:\tlearn: 1.0890949\ttest: 1.1011048\tbest: 1.1011048 (40)\ttotal: 45.9s\tremaining: 8m 34s\n",
      "40:\tlearn: 1.0890949\ttest: 1.1011048\tbest: 1.1011048 (40)\ttotal: 45.9s\tremaining: 8m 34s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 45.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.070101284\n",
      "bestIteration = 44\n",
      "\n",
      "Shrink model to first 45 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1961225\ttest: 2.1944773\tbest: 2.1944773 (0)\ttotal: 1.12s\tremaining: 9m 18s\n",
      "20:\tlearn: 1.3556542\ttest: 1.3495130\tbest: 1.3495130 (20)\ttotal: 23.8s\tremaining: 9m 3s\n",
      "20:\tlearn: 1.3556542\ttest: 1.3495130\tbest: 1.3495130 (20)\ttotal: 23.8s\tremaining: 9m 3s\n",
      "40:\tlearn: 1.0937087\ttest: 1.0883826\tbest: 1.0883826 (40)\ttotal: 46.3s\tremaining: 8m 38s\n",
      "40:\tlearn: 1.0937087\ttest: 1.0883826\tbest: 1.0883826 (40)\ttotal: 46.3s\tremaining: 8m 38s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 47.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.043003714\n",
      "bestIteration = 46\n",
      "\n",
      "Shrink model to first 47 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1958207\ttest: 2.1956260\tbest: 2.1956260 (0)\ttotal: 1.09s\tremaining: 9m 3s\n",
      "20:\tlearn: 1.3551076\ttest: 1.3563826\tbest: 1.3563826 (20)\ttotal: 23.1s\tremaining: 8m 46s\n",
      "20:\tlearn: 1.3551076\ttest: 1.3563826\tbest: 1.3563826 (20)\ttotal: 23.1s\tremaining: 8m 46s\n",
      "40:\tlearn: 1.0914483\ttest: 1.0939611\tbest: 1.0939611 (40)\ttotal: 45.4s\tremaining: 8m 28s\n",
      "40:\tlearn: 1.0914483\ttest: 1.0939611\tbest: 1.0939611 (40)\ttotal: 45.4s\tremaining: 8m 28s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 49.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.035314746\n",
      "bestIteration = 48\n",
      "\n",
      "Shrink model to first 49 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1930102\ttest: 2.1937242\tbest: 2.1937242 (0)\ttotal: 1.14s\tremaining: 9m 30s\n",
      "20:\tlearn: 1.3540466\ttest: 1.3548446\tbest: 1.3548446 (20)\ttotal: 23.4s\tremaining: 8m 53s\n",
      "20:\tlearn: 1.3540466\ttest: 1.3548446\tbest: 1.3548446 (20)\ttotal: 23.4s\tremaining: 8m 53s\n",
      "40:\tlearn: 1.0927342\ttest: 1.0934900\tbest: 1.0934900 (40)\ttotal: 45.8s\tremaining: 8m 32s\n",
      "40:\tlearn: 1.0927342\ttest: 1.0934900\tbest: 1.0934900 (40)\ttotal: 45.8s\tremaining: 8m 32s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 50.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.028763708\n",
      "bestIteration = 49\n",
      "\n",
      "Shrink model to first 50 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1953123\ttest: 2.1956627\tbest: 2.1956627 (0)\ttotal: 1.13s\tremaining: 9m 21s\n",
      "20:\tlearn: 1.3523891\ttest: 1.3548995\tbest: 1.3548995 (20)\ttotal: 23.5s\tremaining: 8m 56s\n",
      "20:\tlearn: 1.3523891\ttest: 1.3548995\tbest: 1.3548995 (20)\ttotal: 23.5s\tremaining: 8m 56s\n",
      "40:\tlearn: 1.0894044\ttest: 1.0945298\tbest: 1.0945298 (40)\ttotal: 45.8s\tremaining: 8m 33s\n",
      "40:\tlearn: 1.0894044\ttest: 1.0945298\tbest: 1.0945298 (40)\ttotal: 45.8s\tremaining: 8m 33s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 53.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.013381541\n",
      "bestIteration = 52\n",
      "\n",
      "Shrink model to first 53 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1950718\ttest: 2.1965798\tbest: 2.1965798 (0)\ttotal: 1.18s\tremaining: 9m 47s\n",
      "20:\tlearn: 1.3543329\ttest: 1.3612882\tbest: 1.3612882 (20)\ttotal: 23.1s\tremaining: 8m 46s\n",
      "20:\tlearn: 1.3543329\ttest: 1.3612882\tbest: 1.3612882 (20)\ttotal: 23.1s\tremaining: 8m 46s\n",
      "40:\tlearn: 1.0901994\ttest: 1.1011513\tbest: 1.1011513 (40)\ttotal: 45.8s\tremaining: 8m 33s\n",
      "40:\tlearn: 1.0901994\ttest: 1.1011513\tbest: 1.1011513 (40)\ttotal: 45.8s\tremaining: 8m 33s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 55.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.006931764\n",
      "bestIteration = 54\n",
      "\n",
      "Shrink model to first 55 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1970540\ttest: 2.1968089\tbest: 2.1968089 (0)\ttotal: 1.16s\tremaining: 9m 36s\n",
      "20:\tlearn: 1.3551473\ttest: 1.3566902\tbest: 1.3566902 (20)\ttotal: 23.7s\tremaining: 9m\n",
      "20:\tlearn: 1.3551473\ttest: 1.3566902\tbest: 1.3566902 (20)\ttotal: 23.7s\tremaining: 9m\n",
      "40:\tlearn: 1.0905190\ttest: 1.0946102\tbest: 1.0946102 (40)\ttotal: 46.2s\tremaining: 8m 37s\n",
      "40:\tlearn: 1.0905190\ttest: 1.0946102\tbest: 1.0946102 (40)\ttotal: 46.2s\tremaining: 8m 37s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 59.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.9819520075\n",
      "bestIteration = 58\n",
      "\n",
      "Shrink model to first 59 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1949596\ttest: 2.1953856\tbest: 2.1953856 (0)\ttotal: 1.13s\tremaining: 9m 24s\n",
      "20:\tlearn: 1.3525327\ttest: 1.3605700\tbest: 1.3605700 (20)\ttotal: 23.9s\tremaining: 9m 5s\n",
      "20:\tlearn: 1.3525327\ttest: 1.3605700\tbest: 1.3605700 (20)\ttotal: 23.9s\tremaining: 9m 5s\n",
      "40:\tlearn: 1.0910829\ttest: 1.1018847\tbest: 1.1018847 (40)\ttotal: 46.7s\tremaining: 8m 42s\n",
      "40:\tlearn: 1.0910829\ttest: 1.1018847\tbest: 1.1018847 (40)\ttotal: 46.7s\tremaining: 8m 42s\n",
      "60:\tlearn: 0.9662685\ttest: 0.9794777\tbest: 0.9794777 (60)\ttotal: 1m 9s\tremaining: 8m 17s\n",
      "60:\tlearn: 0.9662685\ttest: 0.9794777\tbest: 0.9794777 (60)\ttotal: 1m 9s\tremaining: 8m 17s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 66.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.95942772\n",
      "bestIteration = 65\n",
      "\n",
      "Shrink model to first 66 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1951181\ttest: 2.1948243\tbest: 2.1948243 (0)\ttotal: 1.08s\tremaining: 8m 57s\n",
      "20:\tlearn: 1.3538308\ttest: 1.3535026\tbest: 1.3535026 (20)\ttotal: 23.8s\tremaining: 9m 2s\n",
      "20:\tlearn: 1.3538308\ttest: 1.3535026\tbest: 1.3535026 (20)\ttotal: 23.8s\tremaining: 9m 2s\n",
      "40:\tlearn: 1.0916394\ttest: 1.0923840\tbest: 1.0923840 (40)\ttotal: 45.6s\tremaining: 8m 30s\n",
      "40:\tlearn: 1.0916394\ttest: 1.0923840\tbest: 1.0923840 (40)\ttotal: 45.6s\tremaining: 8m 30s\n",
      "60:\tlearn: 0.9679673\ttest: 0.9694891\tbest: 0.9694891 (60)\ttotal: 1m 8s\tremaining: 8m 9s\n",
      "60:\tlearn: 0.9679673\ttest: 0.9694891\tbest: 0.9694891 (60)\ttotal: 1m 8s\tremaining: 8m 9s\n",
      "80:\tlearn: 0.9022217\ttest: 0.9050846\tbest: 0.9050846 (80)\ttotal: 1m 30s\tremaining: 7m 47s\n",
      "80:\tlearn: 0.9022217\ttest: 0.9050846\tbest: 0.9050846 (80)\ttotal: 1m 30s\tremaining: 7m 47s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 82.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\model.pkl\n",
      "\t0.5071\t = Validation score   (macro_f1)\n",
      "\t627.71s\t = Training   runtime\n",
      "\t0.62s\t = Validation runtime\n",
      "\t16652.5\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_3_BAG_L1 ... Training model for up to 24.73s of the 4521.08s of remaining time.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\model.pkl\n",
      "\t0.5071\t = Validation score   (macro_f1)\n",
      "\t627.71s\t = Training   runtime\n",
      "\t0.62s\t = Validation runtime\n",
      "\t16652.5\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_3_BAG_L1 ... Training model for up to 24.73s of the 4521.08s of remaining time.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.9026127077\n",
      "bestIteration = 81\n",
      "\n",
      "Shrink model to first 82 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting CatBoost_3_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tRan out of time, early stopping on iteration 1.\n",
      "\tRan out of time, early stopping on iteration 1.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1618221\ttest: 2.1637774\tbest: 2.1637774 (0)\ttotal: 467ms\tremaining: 3m 6s\n",
      "\n",
      "bestTest = 2.163777422\n",
      "bestIteration = 0\n",
      "\n",
      "Shrink model to first 1 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tRan out of time, early stopping on iteration 1.\n",
      "\tRan out of time, early stopping on iteration 1.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1590764\ttest: 2.1601858\tbest: 2.1601858 (0)\ttotal: 470ms\tremaining: 3m 7s\n",
      "\n",
      "bestTest = 2.160185841\n",
      "bestIteration = 0\n",
      "\n",
      "Shrink model to first 1 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tRan out of time, early stopping on iteration 1.\n",
      "\tRan out of time, early stopping on iteration 1.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1611784\ttest: 2.1593741\tbest: 2.1593741 (0)\ttotal: 466ms\tremaining: 3m 6s\n",
      "\n",
      "bestTest = 2.159374079\n",
      "bestIteration = 0\n",
      "\n",
      "Shrink model to first 1 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tRan out of time, early stopping on iteration 1.\n",
      "\tRan out of time, early stopping on iteration 1.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1636702\ttest: 2.1642326\tbest: 2.1642326 (0)\ttotal: 469ms\tremaining: 3m 7s\n",
      "\n",
      "bestTest = 2.164232605\n",
      "bestIteration = 0\n",
      "\n",
      "Shrink model to first 1 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tRan out of time, early stopping on iteration 1.\n",
      "\tRan out of time, early stopping on iteration 1.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1574857\ttest: 2.1580326\tbest: 2.1580326 (0)\ttotal: 445ms\tremaining: 2m 57s\n",
      "\n",
      "bestTest = 2.158032604\n",
      "bestIteration = 0\n",
      "\n",
      "Shrink model to first 1 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tRan out of time, early stopping on iteration 1.\n",
      "\tRan out of time, early stopping on iteration 1.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1607348\ttest: 2.1604929\tbest: 2.1604929 (0)\ttotal: 481ms\tremaining: 3m 11s\n",
      "\n",
      "bestTest = 2.160492902\n",
      "bestIteration = 0\n",
      "\n",
      "Shrink model to first 1 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1569270\ttest: 2.1589190\tbest: 2.1589190 (0)\ttotal: 445ms\tremaining: 2m 57s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 2.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 2.047085879\n",
      "bestIteration = 1\n",
      "\n",
      "Shrink model to first 2 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1638905\ttest: 2.1635117\tbest: 2.1635117 (0)\ttotal: 448ms\tremaining: 2m 58s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 3.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.952427327\n",
      "bestIteration = 2\n",
      "\n",
      "Shrink model to first 3 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1633854\ttest: 2.1636848\tbest: 2.1636848 (0)\ttotal: 451ms\tremaining: 2m 59s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 5.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.800388727\n",
      "bestIteration = 4\n",
      "\n",
      "Shrink model to first 5 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1209), dynamically setting 'colsample_bylevel' to 0.8271298593879239 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.8271298593879239}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1625231\ttest: 2.1621140\tbest: 2.1621140 (0)\ttotal: 477ms\tremaining: 3m 10s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 7.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\model.pkl\n",
      "\t0.3846\t = Validation score   (macro_f1)\n",
      "\t20.54s\t = Training   runtime\n",
      "\t0.49s\t = Validation runtime\n",
      "\t20968.6\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: ExtraTrees_BAG_L1 ... Training model for up to 1.82s of the 4498.17s of remaining time.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\model.pkl\n",
      "\t0.3846\t = Validation score   (macro_f1)\n",
      "\t20.54s\t = Training   runtime\n",
      "\t0.49s\t = Validation runtime\n",
      "\t20968.6\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: ExtraTrees_BAG_L1 ... Training model for up to 1.82s of the 4498.17s of remaining time.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.676046673\n",
      "bestIteration = 6\n",
      "\n",
      "Shrink model to first 7 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting ExtraTrees_BAG_L1 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L1\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L1\\utils\\model_template.pkl\n",
      "\tWarning: Model is expected to require 13.1s to train, which exceeds the maximum time limit of 0.5s, skipping model...\n",
      "\tTime limit exceeded... Skipping ExtraTrees_BAG_L1.\n",
      "\tWarning: Model is expected to require 13.1s to train, which exceeds the maximum time limit of 0.5s, skipping model...\n",
      "\tTime limit exceeded... Skipping ExtraTrees_BAG_L1.\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L1 due to lack of time remaining.\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L1\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L1 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\oof.pkl\n",
      "Model configs that will be trained (in order):\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\oof.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L2: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L2 ... Training model for up to 360.00s of the 4496.13s of remaining time.\n",
      "\tFitting WeightedEnsemble_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "\tWeightedEnsemble_L2: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L2 ... Training model for up to 360.00s of the 4496.13s of remaining time.\n",
      "\tFitting WeightedEnsemble_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L2\\utils\\model_template.pkl\n",
      "Ensemble size: 14\n",
      "Ensemble weights: \n",
      "[0.07142857 0.78571429 0.14285714 0.         0.         0.\n",
      " 0.         0.        ]\n",
      "\t0.21s\t= Estimated out-of-fold prediction time...\n",
      "Ensemble size: 14\n",
      "Ensemble weights: \n",
      "[0.07142857 0.78571429 0.14285714 0.         0.         0.\n",
      " 0.         0.        ]\n",
      "\t0.21s\t= Estimated out-of-fold prediction time...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L2\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_2_BAG_L1': 0.786, 'LightGBM_3_BAG_L1': 0.143, 'LightGBM_BAG_L1': 0.071}\n",
      "\t0.598\t = Validation score   (macro_f1)\n",
      "\t1.85s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t3223.6\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L2: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L2: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L2: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L2: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L2: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tEnsemble Weights: {'LightGBM_2_BAG_L1': 0.786, 'LightGBM_3_BAG_L1': 0.143, 'LightGBM_BAG_L1': 0.071}\n",
      "\t0.598\t = Validation score   (macro_f1)\n",
      "\t1.85s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t3223.6\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L2: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L2: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L2: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L2: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L2: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tRandomForest_2_BAG_L2: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L2: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L2: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L2: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L2: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L2: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L2: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_2_BAG_L2: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L2: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L2: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L2: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L2: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L2: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L2: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_2_BAG_L2: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L2: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L2: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L2: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L2 models, fit_strategy=\"sequential\" ...\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "\tXGBoost_2_BAG_L2: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L2: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L2: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L2: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L2 models, fit_strategy=\"sequential\" ...\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\oof.pkl\n",
      "Fitting model: NeuralNetFastAI_BAG_L2 ... Training model for up to 2995.40s of the 4494.11s of remaining time.\n",
      "Fitting model: NeuralNetFastAI_BAG_L2 ... Training model for up to 2995.40s of the 4494.11s of remaining time.\n",
      "\tFitting NeuralNetFastAI_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting NeuralNetFastAI_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L2 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L2 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L2\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_BAG_L2 ... Training model for up to 2993.07s of the 4491.78s of remaining time.\n",
      "Fitting model: LightGBM_BAG_L2 ... Training model for up to 2993.07s of the 4491.78s of remaining time.\n",
      "\tFitting LightGBM_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.725634\tvalid_set's macro_f1: 0.602833\n",
      "[100]\tvalid_set's multi_logloss: 0.71356\tvalid_set's macro_f1: 0.602386\n",
      "[100]\tvalid_set's multi_logloss: 0.71356\tvalid_set's macro_f1: 0.602386\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.734969\tvalid_set's macro_f1: 0.587371\n",
      "[100]\tvalid_set's multi_logloss: 0.72655\tvalid_set's macro_f1: 0.583993\n",
      "[100]\tvalid_set's multi_logloss: 0.72655\tvalid_set's macro_f1: 0.583993\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.709711\tvalid_set's macro_f1: 0.604538\n",
      "[100]\tvalid_set's multi_logloss: 0.699421\tvalid_set's macro_f1: 0.603198\n",
      "[100]\tvalid_set's multi_logloss: 0.699421\tvalid_set's macro_f1: 0.603198\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.711983\tvalid_set's macro_f1: 0.615607\n",
      "[100]\tvalid_set's multi_logloss: 0.698407\tvalid_set's macro_f1: 0.616578\n",
      "[100]\tvalid_set's multi_logloss: 0.698407\tvalid_set's macro_f1: 0.616578\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.724778\tvalid_set's macro_f1: 0.59394\n",
      "[100]\tvalid_set's multi_logloss: 0.713819\tvalid_set's macro_f1: 0.591626\n",
      "[100]\tvalid_set's multi_logloss: 0.713819\tvalid_set's macro_f1: 0.591626\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.716162\tvalid_set's macro_f1: 0.595935\n",
      "[100]\tvalid_set's multi_logloss: 0.70618\tvalid_set's macro_f1: 0.594529\n",
      "[100]\tvalid_set's multi_logloss: 0.70618\tvalid_set's macro_f1: 0.594529\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.713407\tvalid_set's macro_f1: 0.61401\n",
      "[100]\tvalid_set's multi_logloss: 0.702528\tvalid_set's macro_f1: 0.612272\n",
      "[100]\tvalid_set's multi_logloss: 0.702528\tvalid_set's macro_f1: 0.612272\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.742816\tvalid_set's macro_f1: 0.596054\n",
      "[100]\tvalid_set's multi_logloss: 0.733984\tvalid_set's macro_f1: 0.594762\n",
      "[100]\tvalid_set's multi_logloss: 0.733984\tvalid_set's macro_f1: 0.594762\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.731407\tvalid_set's macro_f1: 0.598472\n",
      "[100]\tvalid_set's multi_logloss: 0.719959\tvalid_set's macro_f1: 0.593351\n",
      "[100]\tvalid_set's multi_logloss: 0.719959\tvalid_set's macro_f1: 0.593351\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.704674\tvalid_set's macro_f1: 0.60433\n",
      "[100]\tvalid_set's multi_logloss: 0.691557\tvalid_set's macro_f1: 0.605888\n",
      "[100]\tvalid_set's multi_logloss: 0.691557\tvalid_set's macro_f1: 0.605888\n",
      "[150]\tvalid_set's multi_logloss: 0.698025\tvalid_set's macro_f1: 0.602795\n",
      "[150]\tvalid_set's multi_logloss: 0.698025\tvalid_set's macro_f1: 0.602795\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\model.pkl\n",
      "\t0.604\t = Validation score   (macro_f1)\n",
      "\t225.24s\t = Training   runtime\n",
      "\t1.21s\t = Validation runtime\n",
      "\t833.3\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\model.pkl\n",
      "\t0.604\t = Validation score   (macro_f1)\n",
      "\t225.24s\t = Training   runtime\n",
      "\t1.21s\t = Validation runtime\n",
      "\t833.3\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_2_BAG_L2 ... Training model for up to 2764.16s of the 4262.88s of remaining time.\n",
      "Fitting model: LightGBM_2_BAG_L2 ... Training model for up to 2764.16s of the 4262.88s of remaining time.\n",
      "\tFitting LightGBM_2_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_2_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.773684\tvalid_set's macro_f1: 0.607755\n",
      "[100]\tvalid_set's multi_logloss: 0.719599\tvalid_set's macro_f1: 0.608009\n",
      "[100]\tvalid_set's multi_logloss: 0.719599\tvalid_set's macro_f1: 0.608009\n",
      "[150]\tvalid_set's multi_logloss: 0.720834\tvalid_set's macro_f1: 0.605531\n",
      "[150]\tvalid_set's multi_logloss: 0.720834\tvalid_set's macro_f1: 0.605531\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.784264\tvalid_set's macro_f1: 0.585437\n",
      "[100]\tvalid_set's multi_logloss: 0.731337\tvalid_set's macro_f1: 0.586481\n",
      "[100]\tvalid_set's multi_logloss: 0.731337\tvalid_set's macro_f1: 0.586481\n",
      "[150]\tvalid_set's multi_logloss: 0.732058\tvalid_set's macro_f1: 0.585173\n",
      "[150]\tvalid_set's multi_logloss: 0.732058\tvalid_set's macro_f1: 0.585173\n",
      "[200]\tvalid_set's multi_logloss: 0.742073\tvalid_set's macro_f1: 0.583826\n",
      "[200]\tvalid_set's multi_logloss: 0.742073\tvalid_set's macro_f1: 0.583826\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.761066\tvalid_set's macro_f1: 0.606006\n",
      "[100]\tvalid_set's multi_logloss: 0.705728\tvalid_set's macro_f1: 0.606939\n",
      "[100]\tvalid_set's multi_logloss: 0.705728\tvalid_set's macro_f1: 0.606939\n",
      "[150]\tvalid_set's multi_logloss: 0.705236\tvalid_set's macro_f1: 0.604939\n",
      "[150]\tvalid_set's multi_logloss: 0.705236\tvalid_set's macro_f1: 0.604939\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.766178\tvalid_set's macro_f1: 0.602577\n",
      "[100]\tvalid_set's multi_logloss: 0.709546\tvalid_set's macro_f1: 0.600295\n",
      "[100]\tvalid_set's multi_logloss: 0.709546\tvalid_set's macro_f1: 0.600295\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.774141\tvalid_set's macro_f1: 0.599521\n",
      "[100]\tvalid_set's multi_logloss: 0.72206\tvalid_set's macro_f1: 0.598687\n",
      "[100]\tvalid_set's multi_logloss: 0.72206\tvalid_set's macro_f1: 0.598687\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.767877\tvalid_set's macro_f1: 0.59993\n",
      "[100]\tvalid_set's multi_logloss: 0.71246\tvalid_set's macro_f1: 0.599298\n",
      "[100]\tvalid_set's multi_logloss: 0.71246\tvalid_set's macro_f1: 0.599298\n",
      "[150]\tvalid_set's multi_logloss: 0.71213\tvalid_set's macro_f1: 0.599118\n",
      "[150]\tvalid_set's multi_logloss: 0.71213\tvalid_set's macro_f1: 0.599118\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.764636\tvalid_set's macro_f1: 0.612528\n",
      "[100]\tvalid_set's multi_logloss: 0.709387\tvalid_set's macro_f1: 0.612439\n",
      "[100]\tvalid_set's multi_logloss: 0.709387\tvalid_set's macro_f1: 0.612439\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.791653\tvalid_set's macro_f1: 0.591813\n",
      "[100]\tvalid_set's multi_logloss: 0.741852\tvalid_set's macro_f1: 0.592479\n",
      "[100]\tvalid_set's multi_logloss: 0.741852\tvalid_set's macro_f1: 0.592479\n",
      "[150]\tvalid_set's multi_logloss: 0.742775\tvalid_set's macro_f1: 0.591501\n",
      "[150]\tvalid_set's multi_logloss: 0.742775\tvalid_set's macro_f1: 0.591501\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.780026\tvalid_set's macro_f1: 0.5906\n",
      "[100]\tvalid_set's multi_logloss: 0.726763\tvalid_set's macro_f1: 0.594176\n",
      "[100]\tvalid_set's multi_logloss: 0.726763\tvalid_set's macro_f1: 0.594176\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.757499\tvalid_set's macro_f1: 0.612261\n",
      "[100]\tvalid_set's multi_logloss: 0.700272\tvalid_set's macro_f1: 0.613666\n",
      "[100]\tvalid_set's multi_logloss: 0.700272\tvalid_set's macro_f1: 0.613666\n",
      "[150]\tvalid_set's multi_logloss: 0.698937\tvalid_set's macro_f1: 0.613917\n",
      "[150]\tvalid_set's multi_logloss: 0.698937\tvalid_set's macro_f1: 0.613917\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\model.pkl\n",
      "\t0.6036\t = Validation score   (macro_f1)\n",
      "\t449.35s\t = Training   runtime\n",
      "\t1.29s\t = Validation runtime\n",
      "\t828.1\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_3_BAG_L2 ... Training model for up to 2310.64s of the 3809.36s of remaining time.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\model.pkl\n",
      "\t0.6036\t = Validation score   (macro_f1)\n",
      "\t449.35s\t = Training   runtime\n",
      "\t1.29s\t = Validation runtime\n",
      "\t828.1\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_3_BAG_L2 ... Training model for up to 2310.64s of the 3809.36s of remaining time.\n",
      "\tFitting LightGBM_3_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_3_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.853048\tvalid_set's macro_f1: 0.601615\n",
      "[100]\tvalid_set's multi_logloss: 0.737724\tvalid_set's macro_f1: 0.604471\n",
      "[100]\tvalid_set's multi_logloss: 0.737724\tvalid_set's macro_f1: 0.604471\n",
      "[150]\tvalid_set's multi_logloss: 0.715896\tvalid_set's macro_f1: 0.604683\n",
      "[150]\tvalid_set's multi_logloss: 0.715896\tvalid_set's macro_f1: 0.604683\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.861261\tvalid_set's macro_f1: 0.585938\n",
      "[100]\tvalid_set's multi_logloss: 0.748345\tvalid_set's macro_f1: 0.588039\n",
      "[100]\tvalid_set's multi_logloss: 0.748345\tvalid_set's macro_f1: 0.588039\n",
      "[150]\tvalid_set's multi_logloss: 0.727284\tvalid_set's macro_f1: 0.586778\n",
      "[150]\tvalid_set's multi_logloss: 0.727284\tvalid_set's macro_f1: 0.586778\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.841221\tvalid_set's macro_f1: 0.607181\n",
      "[100]\tvalid_set's multi_logloss: 0.722462\tvalid_set's macro_f1: 0.606866\n",
      "[100]\tvalid_set's multi_logloss: 0.722462\tvalid_set's macro_f1: 0.606866\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.845152\tvalid_set's macro_f1: 0.600119\n",
      "[100]\tvalid_set's multi_logloss: 0.727575\tvalid_set's macro_f1: 0.603351\n",
      "[100]\tvalid_set's multi_logloss: 0.727575\tvalid_set's macro_f1: 0.603351\n",
      "[150]\tvalid_set's multi_logloss: 0.704335\tvalid_set's macro_f1: 0.603187\n",
      "[150]\tvalid_set's multi_logloss: 0.704335\tvalid_set's macro_f1: 0.603187\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.852285\tvalid_set's macro_f1: 0.586862\n",
      "[100]\tvalid_set's multi_logloss: 0.737668\tvalid_set's macro_f1: 0.597459\n",
      "[100]\tvalid_set's multi_logloss: 0.737668\tvalid_set's macro_f1: 0.597459\n",
      "[150]\tvalid_set's multi_logloss: 0.716707\tvalid_set's macro_f1: 0.598197\n",
      "[150]\tvalid_set's multi_logloss: 0.716707\tvalid_set's macro_f1: 0.598197\n",
      "[200]\tvalid_set's multi_logloss: 0.713347\tvalid_set's macro_f1: 0.597467\n",
      "[200]\tvalid_set's multi_logloss: 0.713347\tvalid_set's macro_f1: 0.597467\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.847146\tvalid_set's macro_f1: 0.600979\n",
      "[100]\tvalid_set's multi_logloss: 0.730115\tvalid_set's macro_f1: 0.602391\n",
      "[100]\tvalid_set's multi_logloss: 0.730115\tvalid_set's macro_f1: 0.602391\n",
      "[150]\tvalid_set's multi_logloss: 0.707774\tvalid_set's macro_f1: 0.6017\n",
      "[150]\tvalid_set's multi_logloss: 0.707774\tvalid_set's macro_f1: 0.6017\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.84417\tvalid_set's macro_f1: 0.605428\n",
      "[100]\tvalid_set's multi_logloss: 0.728144\tvalid_set's macro_f1: 0.610856\n",
      "[100]\tvalid_set's multi_logloss: 0.728144\tvalid_set's macro_f1: 0.610856\n",
      "[150]\tvalid_set's multi_logloss: 0.706009\tvalid_set's macro_f1: 0.612716\n",
      "[150]\tvalid_set's multi_logloss: 0.706009\tvalid_set's macro_f1: 0.612716\n",
      "[200]\tvalid_set's multi_logloss: 0.70227\tvalid_set's macro_f1: 0.610212\n",
      "[200]\tvalid_set's multi_logloss: 0.70227\tvalid_set's macro_f1: 0.610212\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.867843\tvalid_set's macro_f1: 0.588148\n",
      "[100]\tvalid_set's multi_logloss: 0.758251\tvalid_set's macro_f1: 0.592168\n",
      "[100]\tvalid_set's multi_logloss: 0.758251\tvalid_set's macro_f1: 0.592168\n",
      "[150]\tvalid_set's multi_logloss: 0.738036\tvalid_set's macro_f1: 0.591314\n",
      "[150]\tvalid_set's multi_logloss: 0.738036\tvalid_set's macro_f1: 0.591314\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.860105\tvalid_set's macro_f1: 0.586903\n",
      "[100]\tvalid_set's multi_logloss: 0.745631\tvalid_set's macro_f1: 0.596061\n",
      "[100]\tvalid_set's multi_logloss: 0.745631\tvalid_set's macro_f1: 0.596061\n",
      "[150]\tvalid_set's multi_logloss: 0.723729\tvalid_set's macro_f1: 0.598257\n",
      "[150]\tvalid_set's multi_logloss: 0.723729\tvalid_set's macro_f1: 0.598257\n",
      "[200]\tvalid_set's multi_logloss: 0.719667\tvalid_set's macro_f1: 0.596221\n",
      "[200]\tvalid_set's multi_logloss: 0.719667\tvalid_set's macro_f1: 0.596221\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.838935\tvalid_set's macro_f1: 0.602764\n",
      "[100]\tvalid_set's multi_logloss: 0.720404\tvalid_set's macro_f1: 0.605314\n",
      "[100]\tvalid_set's multi_logloss: 0.720404\tvalid_set's macro_f1: 0.605314\n",
      "[150]\tvalid_set's multi_logloss: 0.697007\tvalid_set's macro_f1: 0.605542\n",
      "[150]\tvalid_set's multi_logloss: 0.697007\tvalid_set's macro_f1: 0.605542\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\model.pkl\n",
      "\t0.602\t = Validation score   (macro_f1)\n",
      "\t437.68s\t = Training   runtime\n",
      "\t1.36s\t = Validation runtime\n",
      "\t823.5\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\model.pkl\n",
      "\t0.602\t = Validation score   (macro_f1)\n",
      "\t437.68s\t = Training   runtime\n",
      "\t1.36s\t = Validation runtime\n",
      "\t823.5\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_BAG_L2 ... Training model for up to 1868.20s of the 3366.92s of remaining time.\n",
      "Fitting model: RandomForest_BAG_L2 ... Training model for up to 1868.20s of the 3366.92s of remaining time.\n",
      "\tFitting RandomForest_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\model_template.pkl\n",
      "\t6.73s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "\t6.73s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\model.pkl\n",
      "\t0.5837\t = Validation score   (macro_f1)\n",
      "\t8.54s\t = Training   runtime\n",
      "\t20.3s\t = Validation runtime\n",
      "\t676.9\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\model.pkl\n",
      "\t0.5837\t = Validation score   (macro_f1)\n",
      "\t8.54s\t = Training   runtime\n",
      "\t20.3s\t = Validation runtime\n",
      "\t676.9\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_2_BAG_L2 ... Training model for up to 1838.31s of the 3337.02s of remaining time.\n",
      "Fitting model: RandomForest_2_BAG_L2 ... Training model for up to 1838.31s of the 3337.02s of remaining time.\n",
      "\tFitting RandomForest_2_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_2_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\model_template.pkl\n",
      "\t5.04s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "\t5.04s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\model.pkl\n",
      "\t0.5972\t = Validation score   (macro_f1)\n",
      "\t173.14s\t = Training   runtime\n",
      "\t14.19s\t = Validation runtime\n",
      "\t736.2\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\model.pkl\n",
      "\t0.5972\t = Validation score   (macro_f1)\n",
      "\t173.14s\t = Training   runtime\n",
      "\t14.19s\t = Validation runtime\n",
      "\t736.2\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_BAG_L2 ... Training model for up to 1650.04s of the 3148.75s of remaining time.\n",
      "Fitting model: CatBoost_BAG_L2 ... Training model for up to 1650.04s of the 3148.75s of remaining time.\n",
      "\tFitting CatBoost_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting CatBoost_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0739636\ttest: 2.0739579\tbest: 2.0739579 (0)\ttotal: 409ms\tremaining: 2m 2s\n",
      "20:\tlearn: 1.0240865\ttest: 1.0281043\tbest: 1.0281043 (20)\ttotal: 8.85s\tremaining: 1m 57s\n",
      "20:\tlearn: 1.0240865\ttest: 1.0281043\tbest: 1.0281043 (20)\ttotal: 8.85s\tremaining: 1m 57s\n",
      "40:\tlearn: 0.8224581\ttest: 0.8319581\tbest: 0.8319581 (40)\ttotal: 17.2s\tremaining: 1m 48s\n",
      "40:\tlearn: 0.8224581\ttest: 0.8319581\tbest: 0.8319581 (40)\ttotal: 17.2s\tremaining: 1m 48s\n",
      "60:\tlearn: 0.7551809\ttest: 0.7691239\tbest: 0.7691239 (60)\ttotal: 25.5s\tremaining: 1m 39s\n",
      "60:\tlearn: 0.7551809\ttest: 0.7691239\tbest: 0.7691239 (60)\ttotal: 25.5s\tremaining: 1m 39s\n",
      "80:\tlearn: 0.7285504\ttest: 0.7460356\tbest: 0.7460356 (80)\ttotal: 33.8s\tremaining: 1m 31s\n",
      "80:\tlearn: 0.7285504\ttest: 0.7460356\tbest: 0.7460356 (80)\ttotal: 33.8s\tremaining: 1m 31s\n",
      "100:\tlearn: 0.7143257\ttest: 0.7350688\tbest: 0.7350688 (100)\ttotal: 42.1s\tremaining: 1m 23s\n",
      "100:\tlearn: 0.7143257\ttest: 0.7350688\tbest: 0.7350688 (100)\ttotal: 42.1s\tremaining: 1m 23s\n",
      "120:\tlearn: 0.7066388\ttest: 0.7307526\tbest: 0.7307526 (120)\ttotal: 50.5s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.7066388\ttest: 0.7307526\tbest: 0.7307526 (120)\ttotal: 50.5s\tremaining: 1m 14s\n",
      "140:\tlearn: 0.7002959\ttest: 0.7269692\tbest: 0.7269692 (140)\ttotal: 58.8s\tremaining: 1m 6s\n",
      "140:\tlearn: 0.7002959\ttest: 0.7269692\tbest: 0.7269692 (140)\ttotal: 58.8s\tremaining: 1m 6s\n",
      "160:\tlearn: 0.6949564\ttest: 0.7237200\tbest: 0.7237200 (160)\ttotal: 1m 7s\tremaining: 58s\n",
      "160:\tlearn: 0.6949564\ttest: 0.7237200\tbest: 0.7237200 (160)\ttotal: 1m 7s\tremaining: 58s\n",
      "180:\tlearn: 0.6906163\ttest: 0.7215941\tbest: 0.7215941 (180)\ttotal: 1m 15s\tremaining: 49.6s\n",
      "180:\tlearn: 0.6906163\ttest: 0.7215941\tbest: 0.7215941 (180)\ttotal: 1m 15s\tremaining: 49.6s\n",
      "200:\tlearn: 0.6859517\ttest: 0.7196020\tbest: 0.7196020 (200)\ttotal: 1m 23s\tremaining: 41.2s\n",
      "200:\tlearn: 0.6859517\ttest: 0.7196020\tbest: 0.7196020 (200)\ttotal: 1m 23s\tremaining: 41.2s\n",
      "220:\tlearn: 0.6814802\ttest: 0.7173440\tbest: 0.7173440 (220)\ttotal: 1m 32s\tremaining: 32.9s\n",
      "220:\tlearn: 0.6814802\ttest: 0.7173440\tbest: 0.7173440 (220)\ttotal: 1m 32s\tremaining: 32.9s\n",
      "240:\tlearn: 0.6780752\ttest: 0.7157449\tbest: 0.7157449 (240)\ttotal: 1m 40s\tremaining: 24.6s\n",
      "240:\tlearn: 0.6780752\ttest: 0.7157449\tbest: 0.7157449 (240)\ttotal: 1m 40s\tremaining: 24.6s\n",
      "260:\tlearn: 0.6748763\ttest: 0.7142431\tbest: 0.7142303 (259)\ttotal: 1m 48s\tremaining: 16.2s\n",
      "260:\tlearn: 0.6748763\ttest: 0.7142431\tbest: 0.7142303 (259)\ttotal: 1m 48s\tremaining: 16.2s\n",
      "280:\tlearn: 0.6722698\ttest: 0.7132033\tbest: 0.7132033 (280)\ttotal: 1m 57s\tremaining: 7.92s\n",
      "280:\tlearn: 0.6722698\ttest: 0.7132033\tbest: 0.7132033 (280)\ttotal: 1m 57s\tremaining: 7.92s\n",
      "299:\tlearn: 0.6694533\ttest: 0.7119722\tbest: 0.7119722 (299)\ttotal: 2m 4s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7119722284\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.6694533\ttest: 0.7119722\tbest: 0.7119722 (299)\ttotal: 2m 4s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7119722284\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0703671\ttest: 2.0714904\tbest: 2.0714904 (0)\ttotal: 428ms\tremaining: 2m 7s\n",
      "20:\tlearn: 1.0235802\ttest: 1.0344056\tbest: 1.0344056 (20)\ttotal: 9s\tremaining: 1m 59s\n",
      "20:\tlearn: 1.0235802\ttest: 1.0344056\tbest: 1.0344056 (20)\ttotal: 9s\tremaining: 1m 59s\n",
      "40:\tlearn: 0.8241936\ttest: 0.8401988\tbest: 0.8401988 (40)\ttotal: 17.5s\tremaining: 1m 50s\n",
      "40:\tlearn: 0.8241936\ttest: 0.8401988\tbest: 0.8401988 (40)\ttotal: 17.5s\tremaining: 1m 50s\n",
      "60:\tlearn: 0.7546504\ttest: 0.7745086\tbest: 0.7745086 (60)\ttotal: 26s\tremaining: 1m 41s\n",
      "60:\tlearn: 0.7546504\ttest: 0.7745086\tbest: 0.7745086 (60)\ttotal: 26s\tremaining: 1m 41s\n",
      "80:\tlearn: 0.7293955\ttest: 0.7532504\tbest: 0.7532504 (80)\ttotal: 34.5s\tremaining: 1m 33s\n",
      "80:\tlearn: 0.7293955\ttest: 0.7532504\tbest: 0.7532504 (80)\ttotal: 34.5s\tremaining: 1m 33s\n",
      "100:\tlearn: 0.7149799\ttest: 0.7426612\tbest: 0.7426612 (100)\ttotal: 43s\tremaining: 1m 24s\n",
      "100:\tlearn: 0.7149799\ttest: 0.7426612\tbest: 0.7426612 (100)\ttotal: 43s\tremaining: 1m 24s\n",
      "120:\tlearn: 0.7066185\ttest: 0.7376165\tbest: 0.7376165 (120)\ttotal: 51.6s\tremaining: 1m 16s\n",
      "120:\tlearn: 0.7066185\ttest: 0.7376165\tbest: 0.7376165 (120)\ttotal: 51.6s\tremaining: 1m 16s\n",
      "140:\tlearn: 0.6993047\ttest: 0.7334298\tbest: 0.7334298 (140)\ttotal: 1m\tremaining: 1m 7s\n",
      "140:\tlearn: 0.6993047\ttest: 0.7334298\tbest: 0.7334298 (140)\ttotal: 1m\tremaining: 1m 7s\n",
      "160:\tlearn: 0.6927052\ttest: 0.7294658\tbest: 0.7294658 (160)\ttotal: 1m 8s\tremaining: 59.2s\n",
      "160:\tlearn: 0.6927052\ttest: 0.7294658\tbest: 0.7294658 (160)\ttotal: 1m 8s\tremaining: 59.2s\n",
      "180:\tlearn: 0.6879586\ttest: 0.7277196\tbest: 0.7277196 (180)\ttotal: 1m 17s\tremaining: 50.7s\n",
      "180:\tlearn: 0.6879586\ttest: 0.7277196\tbest: 0.7277196 (180)\ttotal: 1m 17s\tremaining: 50.7s\n",
      "200:\tlearn: 0.6831365\ttest: 0.7255190\tbest: 0.7255190 (200)\ttotal: 1m 25s\tremaining: 42.2s\n",
      "200:\tlearn: 0.6831365\ttest: 0.7255190\tbest: 0.7255190 (200)\ttotal: 1m 25s\tremaining: 42.2s\n",
      "220:\tlearn: 0.6787682\ttest: 0.7236717\tbest: 0.7236717 (220)\ttotal: 1m 34s\tremaining: 33.6s\n",
      "220:\tlearn: 0.6787682\ttest: 0.7236717\tbest: 0.7236717 (220)\ttotal: 1m 34s\tremaining: 33.6s\n",
      "240:\tlearn: 0.6755274\ttest: 0.7224714\tbest: 0.7224714 (240)\ttotal: 1m 42s\tremaining: 25.1s\n",
      "240:\tlearn: 0.6755274\ttest: 0.7224714\tbest: 0.7224714 (240)\ttotal: 1m 42s\tremaining: 25.1s\n",
      "260:\tlearn: 0.6715270\ttest: 0.7207498\tbest: 0.7207412 (259)\ttotal: 1m 51s\tremaining: 16.6s\n",
      "260:\tlearn: 0.6715270\ttest: 0.7207498\tbest: 0.7207412 (259)\ttotal: 1m 51s\tremaining: 16.6s\n",
      "280:\tlearn: 0.6691881\ttest: 0.7199673\tbest: 0.7199397 (278)\ttotal: 1m 59s\tremaining: 8.08s\n",
      "280:\tlearn: 0.6691881\ttest: 0.7199673\tbest: 0.7199397 (278)\ttotal: 1m 59s\tremaining: 8.08s\n",
      "299:\tlearn: 0.6661146\ttest: 0.7192645\tbest: 0.7192645 (299)\ttotal: 2m 7s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7192645479\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.6661146\ttest: 0.7192645\tbest: 0.7192645 (299)\ttotal: 2m 7s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7192645479\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0724377\ttest: 2.0707188\tbest: 2.0707188 (0)\ttotal: 439ms\tremaining: 2m 11s\n",
      "20:\tlearn: 1.0280821\ttest: 1.0186173\tbest: 1.0186173 (20)\ttotal: 8.88s\tremaining: 1m 57s\n",
      "20:\tlearn: 1.0280821\ttest: 1.0186173\tbest: 1.0186173 (20)\ttotal: 8.88s\tremaining: 1m 57s\n",
      "40:\tlearn: 0.8294139\ttest: 0.8182493\tbest: 0.8182493 (40)\ttotal: 17.3s\tremaining: 1m 49s\n",
      "40:\tlearn: 0.8294139\ttest: 0.8182493\tbest: 0.8182493 (40)\ttotal: 17.3s\tremaining: 1m 49s\n",
      "60:\tlearn: 0.7610238\ttest: 0.7501391\tbest: 0.7501391 (60)\ttotal: 25.7s\tremaining: 1m 40s\n",
      "60:\tlearn: 0.7610238\ttest: 0.7501391\tbest: 0.7501391 (60)\ttotal: 25.7s\tremaining: 1m 40s\n",
      "80:\tlearn: 0.7346873\ttest: 0.7258204\tbest: 0.7258204 (80)\ttotal: 34.1s\tremaining: 1m 32s\n",
      "80:\tlearn: 0.7346873\ttest: 0.7258204\tbest: 0.7258204 (80)\ttotal: 34.1s\tremaining: 1m 32s\n",
      "100:\tlearn: 0.7205388\ttest: 0.7148101\tbest: 0.7148101 (100)\ttotal: 42.5s\tremaining: 1m 23s\n",
      "100:\tlearn: 0.7205388\ttest: 0.7148101\tbest: 0.7148101 (100)\ttotal: 42.5s\tremaining: 1m 23s\n",
      "120:\tlearn: 0.7129336\ttest: 0.7101071\tbest: 0.7101071 (120)\ttotal: 50.9s\tremaining: 1m 15s\n",
      "120:\tlearn: 0.7129336\ttest: 0.7101071\tbest: 0.7101071 (120)\ttotal: 50.9s\tremaining: 1m 15s\n",
      "140:\tlearn: 0.7059948\ttest: 0.7060138\tbest: 0.7060138 (140)\ttotal: 59.3s\tremaining: 1m 6s\n",
      "140:\tlearn: 0.7059948\ttest: 0.7060138\tbest: 0.7060138 (140)\ttotal: 59.3s\tremaining: 1m 6s\n",
      "160:\tlearn: 0.6995378\ttest: 0.7025644\tbest: 0.7025644 (160)\ttotal: 1m 7s\tremaining: 58.4s\n",
      "160:\tlearn: 0.6995378\ttest: 0.7025644\tbest: 0.7025644 (160)\ttotal: 1m 7s\tremaining: 58.4s\n",
      "180:\tlearn: 0.6941770\ttest: 0.7002752\tbest: 0.7002752 (180)\ttotal: 1m 16s\tremaining: 50s\n",
      "180:\tlearn: 0.6941770\ttest: 0.7002752\tbest: 0.7002752 (180)\ttotal: 1m 16s\tremaining: 50s\n",
      "200:\tlearn: 0.6900953\ttest: 0.6984922\tbest: 0.6984922 (200)\ttotal: 1m 24s\tremaining: 41.6s\n",
      "200:\tlearn: 0.6900953\ttest: 0.6984922\tbest: 0.6984922 (200)\ttotal: 1m 24s\tremaining: 41.6s\n",
      "220:\tlearn: 0.6859737\ttest: 0.6964526\tbest: 0.6964526 (220)\ttotal: 1m 32s\tremaining: 33.2s\n",
      "220:\tlearn: 0.6859737\ttest: 0.6964526\tbest: 0.6964526 (220)\ttotal: 1m 32s\tremaining: 33.2s\n",
      "240:\tlearn: 0.6824595\ttest: 0.6952741\tbest: 0.6952741 (240)\ttotal: 1m 41s\tremaining: 24.8s\n",
      "240:\tlearn: 0.6824595\ttest: 0.6952741\tbest: 0.6952741 (240)\ttotal: 1m 41s\tremaining: 24.8s\n",
      "260:\tlearn: 0.6790204\ttest: 0.6937660\tbest: 0.6937660 (260)\ttotal: 1m 49s\tremaining: 16.4s\n",
      "260:\tlearn: 0.6790204\ttest: 0.6937660\tbest: 0.6937660 (260)\ttotal: 1m 49s\tremaining: 16.4s\n",
      "280:\tlearn: 0.6765522\ttest: 0.6929116\tbest: 0.6929116 (280)\ttotal: 1m 58s\tremaining: 8s\n",
      "280:\tlearn: 0.6765522\ttest: 0.6929116\tbest: 0.6929116 (280)\ttotal: 1m 58s\tremaining: 8s\n",
      "299:\tlearn: 0.6741611\ttest: 0.6923051\tbest: 0.6922853 (298)\ttotal: 2m 6s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.6922853346\n",
      "bestIteration = 298\n",
      "\n",
      "Shrink model to first 299 iterations.\n",
      "299:\tlearn: 0.6741611\ttest: 0.6923051\tbest: 0.6922853 (298)\ttotal: 2m 6s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.6922853346\n",
      "bestIteration = 298\n",
      "\n",
      "Shrink model to first 299 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0693935\ttest: 2.0722619\tbest: 2.0722619 (0)\ttotal: 424ms\tremaining: 2m 6s\n",
      "20:\tlearn: 1.0262644\ttest: 1.0326847\tbest: 1.0326847 (20)\ttotal: 8.82s\tremaining: 1m 57s\n",
      "20:\tlearn: 1.0262644\ttest: 1.0326847\tbest: 1.0326847 (20)\ttotal: 8.82s\tremaining: 1m 57s\n",
      "40:\tlearn: 0.8252655\ttest: 0.8312205\tbest: 0.8312205 (40)\ttotal: 17.2s\tremaining: 1m 48s\n",
      "40:\tlearn: 0.8252655\ttest: 0.8312205\tbest: 0.8312205 (40)\ttotal: 17.2s\tremaining: 1m 48s\n",
      "60:\tlearn: 0.7577360\ttest: 0.7647793\tbest: 0.7647793 (60)\ttotal: 25.5s\tremaining: 1m 39s\n",
      "60:\tlearn: 0.7577360\ttest: 0.7647793\tbest: 0.7647793 (60)\ttotal: 25.5s\tremaining: 1m 39s\n",
      "80:\tlearn: 0.7313263\ttest: 0.7414391\tbest: 0.7414391 (80)\ttotal: 33.8s\tremaining: 1m 31s\n",
      "80:\tlearn: 0.7313263\ttest: 0.7414391\tbest: 0.7414391 (80)\ttotal: 33.8s\tremaining: 1m 31s\n",
      "100:\tlearn: 0.7175781\ttest: 0.7303633\tbest: 0.7303633 (100)\ttotal: 42.2s\tremaining: 1m 23s\n",
      "100:\tlearn: 0.7175781\ttest: 0.7303633\tbest: 0.7303633 (100)\ttotal: 42.2s\tremaining: 1m 23s\n",
      "120:\tlearn: 0.7098794\ttest: 0.7251233\tbest: 0.7251233 (120)\ttotal: 50.5s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.7098794\ttest: 0.7251233\tbest: 0.7251233 (120)\ttotal: 50.5s\tremaining: 1m 14s\n",
      "140:\tlearn: 0.7036328\ttest: 0.7215419\tbest: 0.7215419 (140)\ttotal: 58.9s\tremaining: 1m 6s\n",
      "140:\tlearn: 0.7036328\ttest: 0.7215419\tbest: 0.7215419 (140)\ttotal: 58.9s\tremaining: 1m 6s\n",
      "160:\tlearn: 0.6981121\ttest: 0.7185595\tbest: 0.7185594 (159)\ttotal: 1m 7s\tremaining: 58s\n",
      "160:\tlearn: 0.6981121\ttest: 0.7185595\tbest: 0.7185594 (159)\ttotal: 1m 7s\tremaining: 58s\n",
      "180:\tlearn: 0.6920585\ttest: 0.7153166\tbest: 0.7153166 (180)\ttotal: 1m 15s\tremaining: 49.7s\n",
      "180:\tlearn: 0.6920585\ttest: 0.7153166\tbest: 0.7153166 (180)\ttotal: 1m 15s\tremaining: 49.7s\n",
      "200:\tlearn: 0.6874560\ttest: 0.7131261\tbest: 0.7131261 (200)\ttotal: 1m 23s\tremaining: 41.3s\n",
      "200:\tlearn: 0.6874560\ttest: 0.7131261\tbest: 0.7131261 (200)\ttotal: 1m 23s\tremaining: 41.3s\n",
      "220:\tlearn: 0.6838376\ttest: 0.7113896\tbest: 0.7113896 (220)\ttotal: 1m 32s\tremaining: 32.9s\n",
      "220:\tlearn: 0.6838376\ttest: 0.7113896\tbest: 0.7113896 (220)\ttotal: 1m 32s\tremaining: 32.9s\n",
      "240:\tlearn: 0.6797879\ttest: 0.7093737\tbest: 0.7093737 (240)\ttotal: 1m 40s\tremaining: 24.6s\n",
      "240:\tlearn: 0.6797879\ttest: 0.7093737\tbest: 0.7093737 (240)\ttotal: 1m 40s\tremaining: 24.6s\n",
      "260:\tlearn: 0.6777321\ttest: 0.7084383\tbest: 0.7084383 (260)\ttotal: 1m 48s\tremaining: 16.2s\n",
      "260:\tlearn: 0.6777321\ttest: 0.7084383\tbest: 0.7084383 (260)\ttotal: 1m 48s\tremaining: 16.2s\n",
      "280:\tlearn: 0.6748680\ttest: 0.7070358\tbest: 0.7070358 (280)\ttotal: 1m 56s\tremaining: 7.91s\n",
      "280:\tlearn: 0.6748680\ttest: 0.7070358\tbest: 0.7070358 (280)\ttotal: 1m 56s\tremaining: 7.91s\n",
      "299:\tlearn: 0.6720570\ttest: 0.7055387\tbest: 0.7055386 (298)\ttotal: 2m 4s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7055385935\n",
      "bestIteration = 298\n",
      "\n",
      "Shrink model to first 299 iterations.\n",
      "299:\tlearn: 0.6720570\ttest: 0.7055387\tbest: 0.7055386 (298)\ttotal: 2m 4s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7055385935\n",
      "bestIteration = 298\n",
      "\n",
      "Shrink model to first 299 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0723468\ttest: 2.0713836\tbest: 2.0713836 (0)\ttotal: 413ms\tremaining: 2m 3s\n",
      "20:\tlearn: 1.0251830\ttest: 1.0278756\tbest: 1.0278756 (20)\ttotal: 8.79s\tremaining: 1m 56s\n",
      "20:\tlearn: 1.0251830\ttest: 1.0278756\tbest: 1.0278756 (20)\ttotal: 8.79s\tremaining: 1m 56s\n",
      "40:\tlearn: 0.8242629\ttest: 0.8321884\tbest: 0.8321884 (40)\ttotal: 17.1s\tremaining: 1m 48s\n",
      "40:\tlearn: 0.8242629\ttest: 0.8321884\tbest: 0.8321884 (40)\ttotal: 17.1s\tremaining: 1m 48s\n",
      "60:\tlearn: 0.7570910\ttest: 0.7689909\tbest: 0.7689909 (60)\ttotal: 25.4s\tremaining: 1m 39s\n",
      "60:\tlearn: 0.7570910\ttest: 0.7689909\tbest: 0.7689909 (60)\ttotal: 25.4s\tremaining: 1m 39s\n",
      "80:\tlearn: 0.7302427\ttest: 0.7469713\tbest: 0.7469713 (80)\ttotal: 33.7s\tremaining: 1m 31s\n",
      "80:\tlearn: 0.7302427\ttest: 0.7469713\tbest: 0.7469713 (80)\ttotal: 33.7s\tremaining: 1m 31s\n",
      "100:\tlearn: 0.7156593\ttest: 0.7365152\tbest: 0.7365152 (100)\ttotal: 42.1s\tremaining: 1m 22s\n",
      "100:\tlearn: 0.7156593\ttest: 0.7365152\tbest: 0.7365152 (100)\ttotal: 42.1s\tremaining: 1m 22s\n",
      "120:\tlearn: 0.7077206\ttest: 0.7317840\tbest: 0.7317840 (120)\ttotal: 50.4s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.7077206\ttest: 0.7317840\tbest: 0.7317840 (120)\ttotal: 50.4s\tremaining: 1m 14s\n",
      "140:\tlearn: 0.7012374\ttest: 0.7280016\tbest: 0.7280016 (140)\ttotal: 58.6s\tremaining: 1m 6s\n",
      "140:\tlearn: 0.7012374\ttest: 0.7280016\tbest: 0.7280016 (140)\ttotal: 58.6s\tremaining: 1m 6s\n",
      "160:\tlearn: 0.6952646\ttest: 0.7246842\tbest: 0.7246842 (160)\ttotal: 1m 6s\tremaining: 57.8s\n",
      "160:\tlearn: 0.6952646\ttest: 0.7246842\tbest: 0.7246842 (160)\ttotal: 1m 6s\tremaining: 57.8s\n",
      "180:\tlearn: 0.6895859\ttest: 0.7221753\tbest: 0.7221753 (180)\ttotal: 1m 15s\tremaining: 49.5s\n",
      "180:\tlearn: 0.6895859\ttest: 0.7221753\tbest: 0.7221753 (180)\ttotal: 1m 15s\tremaining: 49.5s\n",
      "200:\tlearn: 0.6853445\ttest: 0.7200673\tbest: 0.7200673 (200)\ttotal: 1m 23s\tremaining: 41.1s\n",
      "200:\tlearn: 0.6853445\ttest: 0.7200673\tbest: 0.7200673 (200)\ttotal: 1m 23s\tremaining: 41.1s\n",
      "220:\tlearn: 0.6818627\ttest: 0.7187477\tbest: 0.7187477 (220)\ttotal: 1m 31s\tremaining: 32.8s\n",
      "220:\tlearn: 0.6818627\ttest: 0.7187477\tbest: 0.7187477 (220)\ttotal: 1m 31s\tremaining: 32.8s\n",
      "240:\tlearn: 0.6784900\ttest: 0.7172439\tbest: 0.7172439 (240)\ttotal: 1m 40s\tremaining: 24.5s\n",
      "240:\tlearn: 0.6784900\ttest: 0.7172439\tbest: 0.7172439 (240)\ttotal: 1m 40s\tremaining: 24.5s\n",
      "260:\tlearn: 0.6750122\ttest: 0.7159181\tbest: 0.7159152 (259)\ttotal: 1m 48s\tremaining: 16.2s\n",
      "260:\tlearn: 0.6750122\ttest: 0.7159181\tbest: 0.7159152 (259)\ttotal: 1m 48s\tremaining: 16.2s\n",
      "280:\tlearn: 0.6715225\ttest: 0.7140680\tbest: 0.7140680 (280)\ttotal: 1m 56s\tremaining: 7.9s\n",
      "280:\tlearn: 0.6715225\ttest: 0.7140680\tbest: 0.7140680 (280)\ttotal: 1m 56s\tremaining: 7.9s\n",
      "299:\tlearn: 0.6683569\ttest: 0.7132328\tbest: 0.7132328 (299)\ttotal: 2m 4s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7132328336\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.6683569\ttest: 0.7132328\tbest: 0.7132328 (299)\ttotal: 2m 4s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7132328336\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0714244\ttest: 2.0692181\tbest: 2.0692181 (0)\ttotal: 421ms\tremaining: 2m 5s\n",
      "20:\tlearn: 1.0256356\ttest: 1.0216580\tbest: 1.0216580 (20)\ttotal: 8.86s\tremaining: 1m 57s\n",
      "20:\tlearn: 1.0256356\ttest: 1.0216580\tbest: 1.0216580 (20)\ttotal: 8.86s\tremaining: 1m 57s\n",
      "40:\tlearn: 0.8258522\ttest: 0.8247499\tbest: 0.8247499 (40)\ttotal: 17.2s\tremaining: 1m 48s\n",
      "40:\tlearn: 0.8258522\ttest: 0.8247499\tbest: 0.8247499 (40)\ttotal: 17.2s\tremaining: 1m 48s\n",
      "60:\tlearn: 0.7578262\ttest: 0.7596670\tbest: 0.7596670 (60)\ttotal: 25.6s\tremaining: 1m 40s\n",
      "60:\tlearn: 0.7578262\ttest: 0.7596670\tbest: 0.7596670 (60)\ttotal: 25.6s\tremaining: 1m 40s\n",
      "80:\tlearn: 0.7306343\ttest: 0.7360412\tbest: 0.7360412 (80)\ttotal: 34s\tremaining: 1m 31s\n",
      "80:\tlearn: 0.7306343\ttest: 0.7360412\tbest: 0.7360412 (80)\ttotal: 34s\tremaining: 1m 31s\n",
      "100:\tlearn: 0.7175525\ttest: 0.7262127\tbest: 0.7262127 (100)\ttotal: 42.4s\tremaining: 1m 23s\n",
      "100:\tlearn: 0.7175525\ttest: 0.7262127\tbest: 0.7262127 (100)\ttotal: 42.4s\tremaining: 1m 23s\n",
      "120:\tlearn: 0.7102674\ttest: 0.7219086\tbest: 0.7219086 (120)\ttotal: 50.7s\tremaining: 1m 15s\n",
      "120:\tlearn: 0.7102674\ttest: 0.7219086\tbest: 0.7219086 (120)\ttotal: 50.7s\tremaining: 1m 15s\n",
      "140:\tlearn: 0.7048201\ttest: 0.7186875\tbest: 0.7186875 (140)\ttotal: 59.1s\tremaining: 1m 6s\n",
      "140:\tlearn: 0.7048201\ttest: 0.7186875\tbest: 0.7186875 (140)\ttotal: 59.1s\tremaining: 1m 6s\n",
      "160:\tlearn: 0.6988649\ttest: 0.7153013\tbest: 0.7153013 (160)\ttotal: 1m 7s\tremaining: 58.3s\n",
      "160:\tlearn: 0.6988649\ttest: 0.7153013\tbest: 0.7153013 (160)\ttotal: 1m 7s\tremaining: 58.3s\n",
      "180:\tlearn: 0.6937821\ttest: 0.7130436\tbest: 0.7130436 (180)\ttotal: 1m 15s\tremaining: 49.9s\n",
      "180:\tlearn: 0.6937821\ttest: 0.7130436\tbest: 0.7130436 (180)\ttotal: 1m 15s\tremaining: 49.9s\n",
      "200:\tlearn: 0.6891471\ttest: 0.7108964\tbest: 0.7108964 (200)\ttotal: 1m 24s\tremaining: 41.4s\n",
      "200:\tlearn: 0.6891471\ttest: 0.7108964\tbest: 0.7108964 (200)\ttotal: 1m 24s\tremaining: 41.4s\n",
      "220:\tlearn: 0.6847660\ttest: 0.7091352\tbest: 0.7091352 (220)\ttotal: 1m 32s\tremaining: 33s\n",
      "220:\tlearn: 0.6847660\ttest: 0.7091352\tbest: 0.7091352 (220)\ttotal: 1m 32s\tremaining: 33s\n",
      "240:\tlearn: 0.6818875\ttest: 0.7079738\tbest: 0.7079738 (240)\ttotal: 1m 40s\tremaining: 24.7s\n",
      "240:\tlearn: 0.6818875\ttest: 0.7079738\tbest: 0.7079738 (240)\ttotal: 1m 40s\tremaining: 24.7s\n",
      "260:\tlearn: 0.6785030\ttest: 0.7063326\tbest: 0.7063326 (260)\ttotal: 1m 49s\tremaining: 16.3s\n",
      "260:\tlearn: 0.6785030\ttest: 0.7063326\tbest: 0.7063326 (260)\ttotal: 1m 49s\tremaining: 16.3s\n",
      "280:\tlearn: 0.6754552\ttest: 0.7052115\tbest: 0.7052115 (280)\ttotal: 1m 57s\tremaining: 7.94s\n",
      "280:\tlearn: 0.6754552\ttest: 0.7052115\tbest: 0.7052115 (280)\ttotal: 1m 57s\tremaining: 7.94s\n",
      "299:\tlearn: 0.6725229\ttest: 0.7045480\tbest: 0.7045406 (297)\ttotal: 2m 5s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7045406222\n",
      "bestIteration = 297\n",
      "\n",
      "Shrink model to first 298 iterations.\n",
      "299:\tlearn: 0.6725229\ttest: 0.7045480\tbest: 0.7045406 (297)\ttotal: 2m 5s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7045406222\n",
      "bestIteration = 297\n",
      "\n",
      "Shrink model to first 298 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0727007\ttest: 2.0714800\tbest: 2.0714800 (0)\ttotal: 417ms\tremaining: 2m 4s\n",
      "20:\tlearn: 1.0268250\ttest: 1.0248141\tbest: 1.0248141 (20)\ttotal: 8.72s\tremaining: 1m 55s\n",
      "20:\tlearn: 1.0268250\ttest: 1.0248141\tbest: 1.0248141 (20)\ttotal: 8.72s\tremaining: 1m 55s\n",
      "40:\tlearn: 0.8261689\ttest: 0.8257216\tbest: 0.8257216 (40)\ttotal: 17s\tremaining: 1m 47s\n",
      "40:\tlearn: 0.8261689\ttest: 0.8257216\tbest: 0.8257216 (40)\ttotal: 17s\tremaining: 1m 47s\n",
      "60:\tlearn: 0.7591703\ttest: 0.7602996\tbest: 0.7602996 (60)\ttotal: 25.3s\tremaining: 1m 39s\n",
      "60:\tlearn: 0.7591703\ttest: 0.7602996\tbest: 0.7602996 (60)\ttotal: 25.3s\tremaining: 1m 39s\n",
      "80:\tlearn: 0.7325952\ttest: 0.7363046\tbest: 0.7363046 (80)\ttotal: 33.6s\tremaining: 1m 30s\n",
      "80:\tlearn: 0.7325952\ttest: 0.7363046\tbest: 0.7363046 (80)\ttotal: 33.6s\tremaining: 1m 30s\n",
      "100:\tlearn: 0.7186933\ttest: 0.7252562\tbest: 0.7252562 (100)\ttotal: 41.9s\tremaining: 1m 22s\n",
      "100:\tlearn: 0.7186933\ttest: 0.7252562\tbest: 0.7252562 (100)\ttotal: 41.9s\tremaining: 1m 22s\n",
      "120:\tlearn: 0.7106215\ttest: 0.7199051\tbest: 0.7199051 (120)\ttotal: 50.2s\tremaining: 1m 14s\n",
      "120:\tlearn: 0.7106215\ttest: 0.7199051\tbest: 0.7199051 (120)\ttotal: 50.2s\tremaining: 1m 14s\n",
      "140:\tlearn: 0.7035839\ttest: 0.7155131\tbest: 0.7155131 (140)\ttotal: 58.5s\tremaining: 1m 5s\n",
      "140:\tlearn: 0.7035839\ttest: 0.7155131\tbest: 0.7155131 (140)\ttotal: 58.5s\tremaining: 1m 5s\n",
      "160:\tlearn: 0.6976697\ttest: 0.7115436\tbest: 0.7115436 (160)\ttotal: 1m 6s\tremaining: 57.7s\n",
      "160:\tlearn: 0.6976697\ttest: 0.7115436\tbest: 0.7115436 (160)\ttotal: 1m 6s\tremaining: 57.7s\n",
      "180:\tlearn: 0.6928233\ttest: 0.7088552\tbest: 0.7088552 (180)\ttotal: 1m 15s\tremaining: 49.4s\n",
      "180:\tlearn: 0.6928233\ttest: 0.7088552\tbest: 0.7088552 (180)\ttotal: 1m 15s\tremaining: 49.4s\n",
      "200:\tlearn: 0.6882085\ttest: 0.7065629\tbest: 0.7065629 (200)\ttotal: 1m 23s\tremaining: 41.1s\n",
      "200:\tlearn: 0.6882085\ttest: 0.7065629\tbest: 0.7065629 (200)\ttotal: 1m 23s\tremaining: 41.1s\n",
      "220:\tlearn: 0.6831563\ttest: 0.7038370\tbest: 0.7038370 (220)\ttotal: 1m 31s\tremaining: 32.8s\n",
      "220:\tlearn: 0.6831563\ttest: 0.7038370\tbest: 0.7038370 (220)\ttotal: 1m 31s\tremaining: 32.8s\n",
      "240:\tlearn: 0.6801945\ttest: 0.7028174\tbest: 0.7028174 (240)\ttotal: 1m 39s\tremaining: 24.5s\n",
      "240:\tlearn: 0.6801945\ttest: 0.7028174\tbest: 0.7028174 (240)\ttotal: 1m 39s\tremaining: 24.5s\n",
      "260:\tlearn: 0.6768689\ttest: 0.7009047\tbest: 0.7009047 (260)\ttotal: 1m 48s\tremaining: 16.2s\n",
      "260:\tlearn: 0.6768689\ttest: 0.7009047\tbest: 0.7009047 (260)\ttotal: 1m 48s\tremaining: 16.2s\n",
      "280:\tlearn: 0.6738746\ttest: 0.7000525\tbest: 0.7000525 (280)\ttotal: 1m 56s\tremaining: 7.88s\n",
      "280:\tlearn: 0.6738746\ttest: 0.7000525\tbest: 0.7000525 (280)\ttotal: 1m 56s\tremaining: 7.88s\n",
      "299:\tlearn: 0.6708844\ttest: 0.6990285\tbest: 0.6990285 (299)\ttotal: 2m 4s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.6990285286\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.6708844\ttest: 0.6990285\tbest: 0.6990285 (299)\ttotal: 2m 4s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.6990285286\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0709139\ttest: 2.0753411\tbest: 2.0753411 (0)\ttotal: 409ms\tremaining: 2m 2s\n",
      "20:\tlearn: 1.0222337\ttest: 1.0438942\tbest: 1.0438942 (20)\ttotal: 8.64s\tremaining: 1m 54s\n",
      "20:\tlearn: 1.0222337\ttest: 1.0438942\tbest: 1.0438942 (20)\ttotal: 8.64s\tremaining: 1m 54s\n",
      "40:\tlearn: 0.8198621\ttest: 0.8479908\tbest: 0.8479908 (40)\ttotal: 16.8s\tremaining: 1m 46s\n",
      "40:\tlearn: 0.8198621\ttest: 0.8479908\tbest: 0.8479908 (40)\ttotal: 16.8s\tremaining: 1m 46s\n",
      "60:\tlearn: 0.7515941\ttest: 0.7841356\tbest: 0.7841356 (60)\ttotal: 24.9s\tremaining: 1m 37s\n",
      "60:\tlearn: 0.7515941\ttest: 0.7841356\tbest: 0.7841356 (60)\ttotal: 24.9s\tremaining: 1m 37s\n",
      "80:\tlearn: 0.7256081\ttest: 0.7624482\tbest: 0.7624482 (80)\ttotal: 33.1s\tremaining: 1m 29s\n",
      "80:\tlearn: 0.7256081\ttest: 0.7624482\tbest: 0.7624482 (80)\ttotal: 33.1s\tremaining: 1m 29s\n",
      "100:\tlearn: 0.7120378\ttest: 0.7524899\tbest: 0.7524899 (100)\ttotal: 41.3s\tremaining: 1m 21s\n",
      "100:\tlearn: 0.7120378\ttest: 0.7524899\tbest: 0.7524899 (100)\ttotal: 41.3s\tremaining: 1m 21s\n",
      "120:\tlearn: 0.7031225\ttest: 0.7473104\tbest: 0.7473104 (120)\ttotal: 49.5s\tremaining: 1m 13s\n",
      "120:\tlearn: 0.7031225\ttest: 0.7473104\tbest: 0.7473104 (120)\ttotal: 49.5s\tremaining: 1m 13s\n",
      "140:\tlearn: 0.6961818\ttest: 0.7439398\tbest: 0.7439398 (140)\ttotal: 57.7s\tremaining: 1m 5s\n",
      "140:\tlearn: 0.6961818\ttest: 0.7439398\tbest: 0.7439398 (140)\ttotal: 57.7s\tremaining: 1m 5s\n",
      "160:\tlearn: 0.6912504\ttest: 0.7415988\tbest: 0.7415988 (160)\ttotal: 1m 5s\tremaining: 56.8s\n",
      "160:\tlearn: 0.6912504\ttest: 0.7415988\tbest: 0.7415988 (160)\ttotal: 1m 5s\tremaining: 56.8s\n",
      "180:\tlearn: 0.6850577\ttest: 0.7390789\tbest: 0.7390789 (180)\ttotal: 1m 13s\tremaining: 48.6s\n",
      "180:\tlearn: 0.6850577\ttest: 0.7390789\tbest: 0.7390789 (180)\ttotal: 1m 13s\tremaining: 48.6s\n",
      "200:\tlearn: 0.6812015\ttest: 0.7378496\tbest: 0.7378496 (200)\ttotal: 1m 22s\tremaining: 40.4s\n",
      "200:\tlearn: 0.6812015\ttest: 0.7378496\tbest: 0.7378496 (200)\ttotal: 1m 22s\tremaining: 40.4s\n",
      "220:\tlearn: 0.6775015\ttest: 0.7364130\tbest: 0.7364130 (220)\ttotal: 1m 30s\tremaining: 32.3s\n",
      "220:\tlearn: 0.6775015\ttest: 0.7364130\tbest: 0.7364130 (220)\ttotal: 1m 30s\tremaining: 32.3s\n",
      "240:\tlearn: 0.6729844\ttest: 0.7342669\tbest: 0.7342669 (240)\ttotal: 1m 38s\tremaining: 24.1s\n",
      "240:\tlearn: 0.6729844\ttest: 0.7342669\tbest: 0.7342669 (240)\ttotal: 1m 38s\tremaining: 24.1s\n",
      "260:\tlearn: 0.6696311\ttest: 0.7329476\tbest: 0.7329476 (260)\ttotal: 1m 46s\tremaining: 15.9s\n",
      "260:\tlearn: 0.6696311\ttest: 0.7329476\tbest: 0.7329476 (260)\ttotal: 1m 46s\tremaining: 15.9s\n",
      "280:\tlearn: 0.6666162\ttest: 0.7319853\tbest: 0.7319853 (280)\ttotal: 1m 54s\tremaining: 7.75s\n",
      "280:\tlearn: 0.6666162\ttest: 0.7319853\tbest: 0.7319853 (280)\ttotal: 1m 54s\tremaining: 7.75s\n",
      "299:\tlearn: 0.6644145\ttest: 0.7310112\tbest: 0.7310112 (299)\ttotal: 2m 2s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7310111586\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.6644145\ttest: 0.7310112\tbest: 0.7310112 (299)\ttotal: 2m 2s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7310111586\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0704151\ttest: 2.0731913\tbest: 2.0731913 (0)\ttotal: 408ms\tremaining: 2m 1s\n",
      "20:\tlearn: 1.0239613\ttest: 1.0359580\tbest: 1.0359580 (20)\ttotal: 8.56s\tremaining: 1m 53s\n",
      "20:\tlearn: 1.0239613\ttest: 1.0359580\tbest: 1.0359580 (20)\ttotal: 8.56s\tremaining: 1m 53s\n",
      "40:\tlearn: 0.8214853\ttest: 0.8369337\tbest: 0.8369337 (40)\ttotal: 16.6s\tremaining: 1m 45s\n",
      "40:\tlearn: 0.8214853\ttest: 0.8369337\tbest: 0.8369337 (40)\ttotal: 16.6s\tremaining: 1m 45s\n",
      "60:\tlearn: 0.7541266\ttest: 0.7723964\tbest: 0.7723964 (60)\ttotal: 24.7s\tremaining: 1m 36s\n",
      "60:\tlearn: 0.7541266\ttest: 0.7723964\tbest: 0.7723964 (60)\ttotal: 24.7s\tremaining: 1m 36s\n",
      "80:\tlearn: 0.7285057\ttest: 0.7500877\tbest: 0.7500877 (80)\ttotal: 32.8s\tremaining: 1m 28s\n",
      "80:\tlearn: 0.7285057\ttest: 0.7500877\tbest: 0.7500877 (80)\ttotal: 32.8s\tremaining: 1m 28s\n",
      "100:\tlearn: 0.7141323\ttest: 0.7389022\tbest: 0.7389022 (100)\ttotal: 41s\tremaining: 1m 20s\n",
      "100:\tlearn: 0.7141323\ttest: 0.7389022\tbest: 0.7389022 (100)\ttotal: 41s\tremaining: 1m 20s\n",
      "120:\tlearn: 0.7056336\ttest: 0.7337081\tbest: 0.7337081 (120)\ttotal: 49.1s\tremaining: 1m 12s\n",
      "120:\tlearn: 0.7056336\ttest: 0.7337081\tbest: 0.7337081 (120)\ttotal: 49.1s\tremaining: 1m 12s\n",
      "140:\tlearn: 0.6994365\ttest: 0.7300783\tbest: 0.7300737 (139)\ttotal: 57.2s\tremaining: 1m 4s\n",
      "140:\tlearn: 0.6994365\ttest: 0.7300783\tbest: 0.7300737 (139)\ttotal: 57.2s\tremaining: 1m 4s\n",
      "160:\tlearn: 0.6937023\ttest: 0.7269298\tbest: 0.7269298 (160)\ttotal: 1m 5s\tremaining: 56.4s\n",
      "160:\tlearn: 0.6937023\ttest: 0.7269298\tbest: 0.7269298 (160)\ttotal: 1m 5s\tremaining: 56.4s\n",
      "180:\tlearn: 0.6886346\ttest: 0.7248441\tbest: 0.7248441 (180)\ttotal: 1m 13s\tremaining: 48.3s\n",
      "180:\tlearn: 0.6886346\ttest: 0.7248441\tbest: 0.7248441 (180)\ttotal: 1m 13s\tremaining: 48.3s\n",
      "200:\tlearn: 0.6845241\ttest: 0.7232284\tbest: 0.7232284 (200)\ttotal: 1m 21s\tremaining: 40.2s\n",
      "200:\tlearn: 0.6845241\ttest: 0.7232284\tbest: 0.7232284 (200)\ttotal: 1m 21s\tremaining: 40.2s\n",
      "220:\tlearn: 0.6809917\ttest: 0.7219446\tbest: 0.7219446 (220)\ttotal: 1m 29s\tremaining: 32s\n",
      "220:\tlearn: 0.6809917\ttest: 0.7219446\tbest: 0.7219446 (220)\ttotal: 1m 29s\tremaining: 32s\n",
      "240:\tlearn: 0.6770588\ttest: 0.7201622\tbest: 0.7201602 (239)\ttotal: 1m 37s\tremaining: 23.9s\n",
      "240:\tlearn: 0.6770588\ttest: 0.7201622\tbest: 0.7201602 (239)\ttotal: 1m 37s\tremaining: 23.9s\n",
      "260:\tlearn: 0.6737162\ttest: 0.7185912\tbest: 0.7185912 (260)\ttotal: 1m 45s\tremaining: 15.8s\n",
      "260:\tlearn: 0.6737162\ttest: 0.7185912\tbest: 0.7185912 (260)\ttotal: 1m 45s\tremaining: 15.8s\n",
      "280:\tlearn: 0.6709767\ttest: 0.7175651\tbest: 0.7175651 (280)\ttotal: 1m 53s\tremaining: 7.71s\n",
      "280:\tlearn: 0.6709767\ttest: 0.7175651\tbest: 0.7175651 (280)\ttotal: 1m 53s\tremaining: 7.71s\n",
      "299:\tlearn: 0.6686757\ttest: 0.7168205\tbest: 0.7168205 (299)\ttotal: 2m 1s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7168204748\n",
      "bestIteration = 299\n",
      "\n",
      "299:\tlearn: 0.6686757\ttest: 0.7168205\tbest: 0.7168205 (299)\ttotal: 2m 1s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.7168204748\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0744612\ttest: 2.0722999\tbest: 2.0722999 (0)\ttotal: 418ms\tremaining: 2m 4s\n",
      "20:\tlearn: 1.0313014\ttest: 1.0184679\tbest: 1.0184679 (20)\ttotal: 8.7s\tremaining: 1m 55s\n",
      "20:\tlearn: 1.0313014\ttest: 1.0184679\tbest: 1.0184679 (20)\ttotal: 8.7s\tremaining: 1m 55s\n",
      "40:\tlearn: 0.8301049\ttest: 0.8157292\tbest: 0.8157292 (40)\ttotal: 16.9s\tremaining: 1m 46s\n",
      "40:\tlearn: 0.8301049\ttest: 0.8157292\tbest: 0.8157292 (40)\ttotal: 16.9s\tremaining: 1m 46s\n",
      "60:\tlearn: 0.7617048\ttest: 0.7493076\tbest: 0.7493076 (60)\ttotal: 25.1s\tremaining: 1m 38s\n",
      "60:\tlearn: 0.7617048\ttest: 0.7493076\tbest: 0.7493076 (60)\ttotal: 25.1s\tremaining: 1m 38s\n",
      "80:\tlearn: 0.7340378\ttest: 0.7252031\tbest: 0.7252031 (80)\ttotal: 33.2s\tremaining: 1m 29s\n",
      "80:\tlearn: 0.7340378\ttest: 0.7252031\tbest: 0.7252031 (80)\ttotal: 33.2s\tremaining: 1m 29s\n",
      "100:\tlearn: 0.7207630\ttest: 0.7146362\tbest: 0.7146362 (100)\ttotal: 41.4s\tremaining: 1m 21s\n",
      "100:\tlearn: 0.7207630\ttest: 0.7146362\tbest: 0.7146362 (100)\ttotal: 41.4s\tremaining: 1m 21s\n",
      "120:\tlearn: 0.7126426\ttest: 0.7096501\tbest: 0.7096501 (120)\ttotal: 49.6s\tremaining: 1m 13s\n",
      "120:\tlearn: 0.7126426\ttest: 0.7096501\tbest: 0.7096501 (120)\ttotal: 49.6s\tremaining: 1m 13s\n",
      "140:\tlearn: 0.7058171\ttest: 0.7057061\tbest: 0.7057061 (140)\ttotal: 57.8s\tremaining: 1m 5s\n",
      "140:\tlearn: 0.7058171\ttest: 0.7057061\tbest: 0.7057061 (140)\ttotal: 57.8s\tremaining: 1m 5s\n",
      "160:\tlearn: 0.6995457\ttest: 0.7022850\tbest: 0.7022850 (160)\ttotal: 1m 5s\tremaining: 56.9s\n",
      "160:\tlearn: 0.6995457\ttest: 0.7022850\tbest: 0.7022850 (160)\ttotal: 1m 5s\tremaining: 56.9s\n",
      "180:\tlearn: 0.6951963\ttest: 0.7004515\tbest: 0.7004515 (180)\ttotal: 1m 14s\tremaining: 48.7s\n",
      "180:\tlearn: 0.6951963\ttest: 0.7004515\tbest: 0.7004515 (180)\ttotal: 1m 14s\tremaining: 48.7s\n",
      "200:\tlearn: 0.6916084\ttest: 0.6988238\tbest: 0.6988211 (199)\ttotal: 1m 22s\tremaining: 40.5s\n",
      "200:\tlearn: 0.6916084\ttest: 0.6988238\tbest: 0.6988211 (199)\ttotal: 1m 22s\tremaining: 40.5s\n",
      "220:\tlearn: 0.6878989\ttest: 0.6973029\tbest: 0.6973029 (220)\ttotal: 1m 30s\tremaining: 32.3s\n",
      "220:\tlearn: 0.6878989\ttest: 0.6973029\tbest: 0.6973029 (220)\ttotal: 1m 30s\tremaining: 32.3s\n",
      "240:\tlearn: 0.6845947\ttest: 0.6957579\tbest: 0.6957579 (240)\ttotal: 1m 38s\tremaining: 24.1s\n",
      "240:\tlearn: 0.6845947\ttest: 0.6957579\tbest: 0.6957579 (240)\ttotal: 1m 38s\tremaining: 24.1s\n",
      "260:\tlearn: 0.6805086\ttest: 0.6940212\tbest: 0.6940212 (260)\ttotal: 1m 46s\tremaining: 15.9s\n",
      "260:\tlearn: 0.6805086\ttest: 0.6940212\tbest: 0.6940212 (260)\ttotal: 1m 46s\tremaining: 15.9s\n",
      "280:\tlearn: 0.6777772\ttest: 0.6930182\tbest: 0.6930182 (280)\ttotal: 1m 54s\tremaining: 7.76s\n",
      "280:\tlearn: 0.6777772\ttest: 0.6930182\tbest: 0.6930182 (280)\ttotal: 1m 54s\tremaining: 7.76s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\model.pkl\n",
      "\t0.5959\t = Validation score   (macro_f1)\n",
      "\t1256.02s\t = Training   runtime\n",
      "\t0.41s\t = Validation runtime\n",
      "\t891.3\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\model.pkl\n",
      "\t0.5959\t = Validation score   (macro_f1)\n",
      "\t1256.02s\t = Training   runtime\n",
      "\t0.41s\t = Validation runtime\n",
      "\t891.3\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_2_BAG_L2 ... Training model for up to 391.39s of the 1890.10s of remaining time.\n",
      "Fitting model: CatBoost_2_BAG_L2 ... Training model for up to 391.39s of the 1890.10s of remaining time.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "299:\tlearn: 0.6752269\ttest: 0.6920113\tbest: 0.6920113 (299)\ttotal: 2m 2s\tremaining: 0us\n",
      "\n",
      "bestTest = 0.6920113313\n",
      "bestIteration = 299\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting CatBoost_2_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1624801\ttest: 2.1625181\tbest: 2.1625181 (0)\ttotal: 984ms\tremaining: 8m 11s\n",
      "20:\tlearn: 1.2278744\ttest: 1.2314259\tbest: 1.2314259 (20)\ttotal: 23.6s\tremaining: 8m 57s\n",
      "20:\tlearn: 1.2278744\ttest: 1.2314259\tbest: 1.2314259 (20)\ttotal: 23.6s\tremaining: 8m 57s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 25.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.159817379\n",
      "bestIteration = 24\n",
      "\n",
      "Shrink model to first 25 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1614307\ttest: 2.1622425\tbest: 2.1622425 (0)\ttotal: 1.25s\tremaining: 10m 23s\n",
      "20:\tlearn: 1.2291224\ttest: 1.2381075\tbest: 1.2381075 (20)\ttotal: 24.8s\tremaining: 9m 25s\n",
      "20:\tlearn: 1.2291224\ttest: 1.2381075\tbest: 1.2381075 (20)\ttotal: 24.8s\tremaining: 9m 25s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 25.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.165634734\n",
      "bestIteration = 24\n",
      "\n",
      "Shrink model to first 25 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1619799\ttest: 2.1611860\tbest: 2.1611860 (0)\ttotal: 1.21s\tremaining: 10m 2s\n",
      "20:\tlearn: 1.2337362\ttest: 1.2275882\tbest: 1.2275882 (20)\ttotal: 25.2s\tremaining: 9m 34s\n",
      "20:\tlearn: 1.2337362\ttest: 1.2275882\tbest: 1.2275882 (20)\ttotal: 25.2s\tremaining: 9m 34s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 25.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.155378451\n",
      "bestIteration = 24\n",
      "\n",
      "Shrink model to first 25 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1604145\ttest: 2.1616003\tbest: 2.1616003 (0)\ttotal: 1.21s\tremaining: 10m 4s\n",
      "20:\tlearn: 1.2315926\ttest: 1.2394628\tbest: 1.2394628 (20)\ttotal: 25s\tremaining: 9m 29s\n",
      "20:\tlearn: 1.2315926\ttest: 1.2394628\tbest: 1.2394628 (20)\ttotal: 25s\tremaining: 9m 29s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 26.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.151546511\n",
      "bestIteration = 25\n",
      "\n",
      "Shrink model to first 26 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1611067\ttest: 2.1607161\tbest: 2.1607161 (0)\ttotal: 1.23s\tremaining: 10m 13s\n",
      "20:\tlearn: 1.2290890\ttest: 1.2312865\tbest: 1.2312865 (20)\ttotal: 25s\tremaining: 9m 31s\n",
      "20:\tlearn: 1.2290890\ttest: 1.2312865\tbest: 1.2312865 (20)\ttotal: 25s\tremaining: 9m 31s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 28.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.113515376\n",
      "bestIteration = 27\n",
      "\n",
      "Shrink model to first 28 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1599301\ttest: 2.1585284\tbest: 2.1585284 (0)\ttotal: 1.13s\tremaining: 9m 21s\n",
      "20:\tlearn: 1.2329975\ttest: 1.2303110\tbest: 1.2303110 (20)\ttotal: 25.1s\tremaining: 9m 32s\n",
      "20:\tlearn: 1.2329975\ttest: 1.2303110\tbest: 1.2303110 (20)\ttotal: 25.1s\tremaining: 9m 32s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 29.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.097283691\n",
      "bestIteration = 28\n",
      "\n",
      "Shrink model to first 29 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1634152\ttest: 2.1625425\tbest: 2.1625425 (0)\ttotal: 1.24s\tremaining: 10m 16s\n",
      "20:\tlearn: 1.2328793\ttest: 1.2303965\tbest: 1.2303965 (20)\ttotal: 25.4s\tremaining: 9m 39s\n",
      "20:\tlearn: 1.2328793\ttest: 1.2303965\tbest: 1.2303965 (20)\ttotal: 25.4s\tremaining: 9m 39s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 30.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.084666912\n",
      "bestIteration = 29\n",
      "\n",
      "Shrink model to first 30 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1617130\ttest: 2.1644309\tbest: 2.1644309 (0)\ttotal: 1.18s\tremaining: 9m 50s\n",
      "20:\tlearn: 1.2278803\ttest: 1.2452646\tbest: 1.2452646 (20)\ttotal: 25.1s\tremaining: 9m 32s\n",
      "20:\tlearn: 1.2278803\ttest: 1.2452646\tbest: 1.2452646 (20)\ttotal: 25.1s\tremaining: 9m 32s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 33.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.065657772\n",
      "bestIteration = 32\n",
      "\n",
      "Shrink model to first 33 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1610040\ttest: 2.1630015\tbest: 2.1630015 (0)\ttotal: 1.23s\tremaining: 10m 12s\n",
      "20:\tlearn: 1.2287908\ttest: 1.2410282\tbest: 1.2410282 (20)\ttotal: 24.9s\tremaining: 9m 28s\n",
      "20:\tlearn: 1.2287908\ttest: 1.2410282\tbest: 1.2410282 (20)\ttotal: 24.9s\tremaining: 9m 28s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 38.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.008626464\n",
      "bestIteration = 37\n",
      "\n",
      "Shrink model to first 38 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 500, 'learning_rate': 0.03, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1620008\ttest: 2.1605993\tbest: 2.1605993 (0)\ttotal: 1.24s\tremaining: 10m 20s\n",
      "20:\tlearn: 1.2361989\ttest: 1.2276675\tbest: 1.2276675 (20)\ttotal: 24.8s\tremaining: 9m 24s\n",
      "20:\tlearn: 1.2361989\ttest: 1.2276675\tbest: 1.2276675 (20)\ttotal: 24.8s\tremaining: 9m 24s\n",
      "40:\tlearn: 0.9730457\ttest: 0.9634261\tbest: 0.9634261 (40)\ttotal: 48s\tremaining: 8m 57s\n",
      "40:\tlearn: 0.9730457\ttest: 0.9634261\tbest: 0.9634261 (40)\ttotal: 48s\tremaining: 8m 57s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 47.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.9196736955\n",
      "bestIteration = 46\n",
      "\n",
      "Shrink model to first 47 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\model.pkl\n",
      "\t0.5736\t = Validation score   (macro_f1)\n",
      "\t372.16s\t = Training   runtime\n",
      "\t0.62s\t = Validation runtime\n",
      "\t875.4\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_3_BAG_L2 ... Training model for up to 16.32s of the 1515.03s of remaining time.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\model.pkl\n",
      "\t0.5736\t = Validation score   (macro_f1)\n",
      "\t372.16s\t = Training   runtime\n",
      "\t0.62s\t = Validation runtime\n",
      "\t875.4\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_3_BAG_L2 ... Training model for up to 16.32s of the 1515.03s of remaining time.\n",
      "\tFitting CatBoost_3_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting CatBoost_3_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L2\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 400, 'learning_rate': 0.04, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tRan out of time, early stopping on iteration 1.\n",
      "\tRan out of time, early stopping on iteration 1.\n",
      "\tTime limit exceeded... Skipping CatBoost_3_BAG_L2.\n",
      "\tTime limit exceeded... Skipping CatBoost_3_BAG_L2.\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L2\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: ExtraTrees_BAG_L2 ... Training model for up to 13.12s of the 1511.83s of remaining time.\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L2\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: ExtraTrees_BAG_L2 ... Training model for up to 13.12s of the 1511.83s of remaining time.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.1162552\ttest: 2.1155042\tbest: 2.1155042 (0)\ttotal: 497ms\tremaining: 3m 18s\n",
      "\n",
      "bestTest = 2.115504203\n",
      "bestIteration = 0\n",
      "\n",
      "Shrink model to first 1 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting ExtraTrees_BAG_L2 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\model_template.pkl\n",
      "\tWarning: Reducing model 'n_estimators' from 300 -> 279 due to low time. Expected time usage reduced from 12.4s -> 11.6s...\n",
      "\tWarning: Reducing model 'n_estimators' from 300 -> 279 due to low time. Expected time usage reduced from 12.4s -> 11.6s...\n",
      "\t4.9s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "\t4.9s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\model.pkl\n",
      "\t0.5819\t = Validation score   (macro_f1)\n",
      "\t4.26s\t = Training   runtime\n",
      "\t19.65s\t = Validation runtime\n",
      "\t682.8\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\model.pkl\n",
      "\t0.5819\t = Validation score   (macro_f1)\n",
      "\t4.26s\t = Training   runtime\n",
      "\t19.65s\t = Validation runtime\n",
      "\t682.8\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L2 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\oof.pkl\n",
      "Model configs that will be trained (in order):\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\oof.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L3: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L3 ... Training model for up to 360.00s of the 1486.85s of remaining time.\n",
      "\tFitting WeightedEnsemble_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L3\\utils\\model_template.pkl\n",
      "\tWeightedEnsemble_L3: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L3 ... Training model for up to 360.00s of the 1486.85s of remaining time.\n",
      "\tFitting WeightedEnsemble_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L3\\utils\\model_template.pkl\n",
      "Ensemble size: 12\n",
      "Ensemble weights: \n",
      "[0.58333333 0.33333333 0.         0.         0.         0.08333333\n",
      " 0.         0.        ]\n",
      "\t0.1s\t= Estimated out-of-fold prediction time...\n",
      "Ensemble size: 12\n",
      "Ensemble weights: \n",
      "[0.58333333 0.33333333 0.         0.         0.         0.08333333\n",
      " 0.         0.        ]\n",
      "\t0.1s\t= Estimated out-of-fold prediction time...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L3\\model.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L3\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_BAG_L2': 0.583, 'LightGBM_2_BAG_L2': 0.333, 'CatBoost_BAG_L2': 0.083}\n",
      "\t0.6064\t = Validation score   (macro_f1)\n",
      "\t1.87s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t732.4\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L3: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L3: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L3: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L3: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L3: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tEnsemble Weights: {'LightGBM_BAG_L2': 0.583, 'LightGBM_2_BAG_L2': 0.333, 'CatBoost_BAG_L2': 0.083}\n",
      "\t0.6064\t = Validation score   (macro_f1)\n",
      "\t1.87s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t732.4\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Excluded models: [] (Specified by `excluded_model_types`)\n",
      "Model configs that will be trained (in order):\n",
      "\tNeuralNetFastAI_BAG_L3: \t{'epochs': 50, 'lr': 0.001, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.fastainn.tabular_nn_fastai.NNFastAiTabularModel'>, 'priority': 95}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_BAG_L3: \t{'num_boost_round': 300, 'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_2_BAG_L3: \t{'num_boost_round': 500, 'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tLightGBM_3_BAG_L3: \t{'num_boost_round': 400, 'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.lgb.lgb_model.LGBModel'>, 'priority': 90}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tRandomForest_BAG_L3: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'max_features': 'sqrt', 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tRandomForest_2_BAG_L3: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L3: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L3: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L3: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L3: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L3: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L3: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_2_BAG_L3: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L3: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L3: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L3: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L3 models, fit_strategy=\"sequential\" ...\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "\tRandomForest_2_BAG_L3: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'max_features': 0.8, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.rf.rf_model.RFModel'>, 'priority': 80}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tCatBoost_BAG_L3: \t{'iterations': 300, 'learning_rate': 0.05, 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_2_BAG_L3: \t{'iterations': 500, 'learning_rate': 0.03, 'depth': 8, 'l2_leaf_reg': 5, 'bagging_temperature': 0.8, 'random_strength': 1.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tCatBoost_3_BAG_L3: \t{'iterations': 400, 'learning_rate': 0.04, 'depth': 7, 'l2_leaf_reg': 4, 'bagging_temperature': 0.9, 'random_strength': 1.1, 'border_count': 128, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.catboost.catboost_model.CatBoostModel'>, 'priority': 70}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tExtraTrees_BAG_L3: \t{'n_estimators': 300, 'max_depth': 15, 'min_samples_split': 5, 'min_samples_leaf': 2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tExtraTrees_2_BAG_L3: \t{'n_estimators': 200, 'max_depth': 20, 'min_samples_split': 10, 'min_samples_leaf': 4, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile'], 'model_type': <class 'autogluon.tabular.models.xt.xt_model.XTModel'>, 'priority': 60}, 'ag_args_fit': {'num_gpus': 0}, 'ag_args_ensemble': {'use_child_oof': True}}\n",
      "\tXGBoost_BAG_L3: \t{'n_estimators': 300, 'learning_rate': 0.05, 'max_depth': 6, 'colsample_bytree': 0.8, 'subsample': 0.8, 'min_child_weight': 3, 'reg_alpha': 0.1, 'reg_lambda': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_2_BAG_L3: \t{'n_estimators': 500, 'learning_rate': 0.03, 'max_depth': 8, 'colsample_bytree': 0.9, 'subsample': 0.9, 'min_child_weight': 1, 'reg_alpha': 0.2, 'reg_lambda': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tXGBoost_3_BAG_L3: \t{'n_estimators': 400, 'learning_rate': 0.04, 'max_depth': 7, 'colsample_bytree': 0.85, 'subsample': 0.85, 'min_child_weight': 2, 'reg_alpha': 0.15, 'reg_lambda': 0.15, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'softclass'], 'model_type': <class 'autogluon.tabular.models.xgboost.xgboost_model.XGBoostModel'>, 'priority': 40}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_BAG_L3: \t{'num_epochs': 50, 'learning_rate': 0.001, 'weight_decay': 0.0001, 'dropout_prob': 0.1, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "\tNeuralNetTorch_2_BAG_L3: \t{'num_epochs': 100, 'learning_rate': 0.0005, 'weight_decay': 1e-05, 'dropout_prob': 0.2, 'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'model_type': <class 'autogluon.tabular.models.tabular_nn.torch.tabular_nn_torch.TabularNeuralNetTorchModel'>, 'priority': 25}, 'ag_args_fit': {'num_gpus': 0}}\n",
      "Fitting 16 L3 models, fit_strategy=\"sequential\" ...\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\oof.pkl\n",
      "Fitting model: NeuralNetFastAI_BAG_L3 ... Training model for up to 1484.93s of the 1484.83s of remaining time.\n",
      "Fitting model: NeuralNetFastAI_BAG_L3 ... Training model for up to 1484.93s of the 1484.83s of remaining time.\n",
      "\tFitting NeuralNetFastAI_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting NeuralNetFastAI_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L3 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "\tWarning: Exception caused NeuralNetFastAI_BAG_L3 to fail during training (ImportError)... Skipping this model.\n",
      "\t\tImport fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Detailed Traceback:\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 130, in try_import_fastai\n",
      "    import fastai\n",
      "ModuleNotFoundError: No module named 'fastai'\n",
      "\n",
      "During handling of the above exception, another exception occurred:\n",
      "\n",
      "Traceback (most recent call last):\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2169, in _train_and_save\n",
      "    model = self._train_single(**model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\trainer\\abstract_trainer.py\", line 2055, in _train_single\n",
      "    model = model.fit(X=X, y=y, X_val=X_val, y_val=y_val, X_test=X_test, y_test=y_test, total_resources=total_resources, **model_fit_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\stacker_ensemble_model.py\", line 270, in _fit\n",
      "    return super()._fit(X=X, y=y, time_limit=time_limit, **kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 390, in _fit\n",
      "    self._fit_folds(\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\bagged_ensemble_model.py\", line 848, in _fit_folds\n",
      "    fold_fitting_strategy.after_all_folds_scheduled()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 317, in after_all_folds_scheduled\n",
      "    self._fit_fold_model(job)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 322, in _fit_fold_model\n",
      "    fold_model = self._fit(self.model_base, time_start_fold, time_limit_fold, fold_ctx, self.model_base_kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\ensemble\\fold_fitting_strategy.py\", line 358, in _fit\n",
      "    fold_model.fit(X=X_fold, y=y_fold, X_val=X_val_fold, y_val=y_val_fold, time_limit=time_limit_fold, num_cpus=num_cpus, num_gpus=num_gpus, **kwargs_fold)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\core\\models\\abstract\\abstract_model.py\", line 1051, in fit\n",
      "    out = self._fit(**kwargs)\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\tabular\\models\\fastainn\\tabular_nn_fastai.py\", line 230, in _fit\n",
      "    try_import_fastai()\n",
      "  File \"g:\\Anaconda3\\envs\\starcup\\lib\\site-packages\\autogluon\\common\\utils\\try_import.py\", line 141, in try_import_fastai\n",
      "    raise ImportError(\n",
      "ImportError: Import fastai failed. A quick tip is to install via `pip install autogluon.tabular[fastai]==1.3.1`. \n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\NeuralNetFastAI_BAG_L3\\utils\\model_template.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_BAG_L3 ... Training model for up to 1482.54s of the 1482.44s of remaining time.\n",
      "Fitting model: LightGBM_BAG_L3 ... Training model for up to 1482.54s of the 1482.44s of remaining time.\n",
      "\tFitting LightGBM_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n",
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.729438\tvalid_set's macro_f1: 0.605257\n",
      "[100]\tvalid_set's multi_logloss: 0.719131\tvalid_set's macro_f1: 0.602061\n",
      "[100]\tvalid_set's multi_logloss: 0.719131\tvalid_set's macro_f1: 0.602061\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.729698\tvalid_set's macro_f1: 0.603635\n",
      "[100]\tvalid_set's multi_logloss: 0.71829\tvalid_set's macro_f1: 0.599859\n",
      "[100]\tvalid_set's multi_logloss: 0.71829\tvalid_set's macro_f1: 0.599859\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.733725\tvalid_set's macro_f1: 0.602111\n",
      "[100]\tvalid_set's multi_logloss: 0.721933\tvalid_set's macro_f1: 0.603546\n",
      "[100]\tvalid_set's multi_logloss: 0.721933\tvalid_set's macro_f1: 0.603546\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.705433\tvalid_set's macro_f1: 0.599195\n",
      "[100]\tvalid_set's multi_logloss: 0.692948\tvalid_set's macro_f1: 0.598162\n",
      "[100]\tvalid_set's multi_logloss: 0.692948\tvalid_set's macro_f1: 0.598162\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.73382\tvalid_set's macro_f1: 0.589344\n",
      "[100]\tvalid_set's multi_logloss: 0.724958\tvalid_set's macro_f1: 0.587899\n",
      "[100]\tvalid_set's multi_logloss: 0.724958\tvalid_set's macro_f1: 0.587899\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.718761\tvalid_set's macro_f1: 0.603108\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.735547\tvalid_set's macro_f1: 0.593172\n",
      "[100]\tvalid_set's multi_logloss: 0.724435\tvalid_set's macro_f1: 0.591355\n",
      "[100]\tvalid_set's multi_logloss: 0.724435\tvalid_set's macro_f1: 0.591355\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.721534\tvalid_set's macro_f1: 0.595929\n",
      "[100]\tvalid_set's multi_logloss: 0.710656\tvalid_set's macro_f1: 0.595923\n",
      "[100]\tvalid_set's multi_logloss: 0.710656\tvalid_set's macro_f1: 0.595923\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.72491\tvalid_set's macro_f1: 0.601849\n",
      "[100]\tvalid_set's multi_logloss: 0.715382\tvalid_set's macro_f1: 0.603951\n",
      "[100]\tvalid_set's multi_logloss: 0.715382\tvalid_set's macro_f1: 0.603951\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 300 rounds... Hyperparameters: {'learning_rate': 0.05, 'num_leaves': 31, 'feature_fraction': 0.8, 'bagging_fraction': 0.8, 'bagging_freq': 5, 'min_child_samples': 20, 'lambda_l1': 0.1, 'lambda_l2': 0.1}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.732124\tvalid_set's macro_f1: 0.591113\n",
      "[100]\tvalid_set's multi_logloss: 0.72258\tvalid_set's macro_f1: 0.589155\n",
      "[100]\tvalid_set's multi_logloss: 0.72258\tvalid_set's macro_f1: 0.589155\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L3\\model.pkl\n",
      "\t0.6014\t = Validation score   (macro_f1)\n",
      "\t218.76s\t = Training   runtime\n",
      "\t1.22s\t = Validation runtime\n",
      "\t366.4\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L3\\model.pkl\n",
      "\t0.6014\t = Validation score   (macro_f1)\n",
      "\t218.76s\t = Training   runtime\n",
      "\t1.22s\t = Validation runtime\n",
      "\t366.4\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_2_BAG_L3 ... Training model for up to 1260.09s of the 1259.98s of remaining time.\n",
      "Fitting model: LightGBM_2_BAG_L3 ... Training model for up to 1260.09s of the 1259.98s of remaining time.\n",
      "\tFitting LightGBM_2_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_2_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n",
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.778768\tvalid_set's macro_f1: 0.59977\n",
      "[100]\tvalid_set's multi_logloss: 0.726655\tvalid_set's macro_f1: 0.599812\n",
      "[100]\tvalid_set's multi_logloss: 0.726655\tvalid_set's macro_f1: 0.599812\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.779478\tvalid_set's macro_f1: 0.595367\n",
      "[100]\tvalid_set's multi_logloss: 0.726921\tvalid_set's macro_f1: 0.599465\n",
      "[100]\tvalid_set's multi_logloss: 0.726921\tvalid_set's macro_f1: 0.599465\n",
      "[150]\tvalid_set's multi_logloss: 0.726749\tvalid_set's macro_f1: 0.597474\n",
      "[150]\tvalid_set's multi_logloss: 0.726749\tvalid_set's macro_f1: 0.597474\n",
      "[200]\tvalid_set's multi_logloss: 0.736772\tvalid_set's macro_f1: 0.598062\n",
      "[200]\tvalid_set's multi_logloss: 0.736772\tvalid_set's macro_f1: 0.598062\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.782763\tvalid_set's macro_f1: 0.595473\n",
      "[100]\tvalid_set's multi_logloss: 0.730328\tvalid_set's macro_f1: 0.598012\n",
      "[100]\tvalid_set's multi_logloss: 0.730328\tvalid_set's macro_f1: 0.598012\n",
      "[150]\tvalid_set's multi_logloss: 0.73017\tvalid_set's macro_f1: 0.59619\n",
      "[150]\tvalid_set's multi_logloss: 0.73017\tvalid_set's macro_f1: 0.59619\n",
      "[200]\tvalid_set's multi_logloss: 0.739098\tvalid_set's macro_f1: 0.597466\n",
      "[200]\tvalid_set's multi_logloss: 0.739098\tvalid_set's macro_f1: 0.597466\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.761525\tvalid_set's macro_f1: 0.593314\n",
      "[100]\tvalid_set's multi_logloss: 0.705675\tvalid_set's macro_f1: 0.593025\n",
      "[100]\tvalid_set's multi_logloss: 0.705675\tvalid_set's macro_f1: 0.593025\n",
      "[150]\tvalid_set's multi_logloss: 0.705592\tvalid_set's macro_f1: 0.595977\n",
      "[150]\tvalid_set's multi_logloss: 0.705592\tvalid_set's macro_f1: 0.595977\n",
      "[200]\tvalid_set's multi_logloss: 0.713871\tvalid_set's macro_f1: 0.594698\n",
      "[200]\tvalid_set's multi_logloss: 0.713871\tvalid_set's macro_f1: 0.594698\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.781249\tvalid_set's macro_f1: 0.595772\n",
      "[100]\tvalid_set's multi_logloss: 0.728456\tvalid_set's macro_f1: 0.598292\n",
      "[100]\tvalid_set's multi_logloss: 0.728456\tvalid_set's macro_f1: 0.598292\n",
      "[150]\tvalid_set's multi_logloss: 0.729186\tvalid_set's macro_f1: 0.595853\n",
      "[150]\tvalid_set's multi_logloss: 0.729186\tvalid_set's macro_f1: 0.595853\n",
      "[200]\tvalid_set's multi_logloss: 0.73917\tvalid_set's macro_f1: 0.596677\n",
      "[200]\tvalid_set's multi_logloss: 0.73917\tvalid_set's macro_f1: 0.596677\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.769542\tvalid_set's macro_f1: 0.598869\n",
      "[100]\tvalid_set's multi_logloss: 0.712633\tvalid_set's macro_f1: 0.598883\n",
      "[100]\tvalid_set's multi_logloss: 0.712633\tvalid_set's macro_f1: 0.598883\n",
      "[150]\tvalid_set's multi_logloss: 0.712618\tvalid_set's macro_f1: 0.600239\n",
      "[150]\tvalid_set's multi_logloss: 0.712618\tvalid_set's macro_f1: 0.600239\n",
      "[200]\tvalid_set's multi_logloss: 0.722202\tvalid_set's macro_f1: 0.59858\n",
      "[200]\tvalid_set's multi_logloss: 0.722202\tvalid_set's macro_f1: 0.59858\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.783318\tvalid_set's macro_f1: 0.590922\n",
      "[100]\tvalid_set's multi_logloss: 0.730361\tvalid_set's macro_f1: 0.591022\n",
      "[100]\tvalid_set's multi_logloss: 0.730361\tvalid_set's macro_f1: 0.591022\n",
      "[150]\tvalid_set's multi_logloss: 0.730083\tvalid_set's macro_f1: 0.592203\n",
      "[150]\tvalid_set's multi_logloss: 0.730083\tvalid_set's macro_f1: 0.592203\n",
      "[200]\tvalid_set's multi_logloss: 0.738769\tvalid_set's macro_f1: 0.59468\n",
      "[200]\tvalid_set's multi_logloss: 0.738769\tvalid_set's macro_f1: 0.59468\n",
      "[250]\tvalid_set's multi_logloss: 0.750621\tvalid_set's macro_f1: 0.594062\n",
      "[250]\tvalid_set's multi_logloss: 0.750621\tvalid_set's macro_f1: 0.594062\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.772129\tvalid_set's macro_f1: 0.599543\n",
      "[100]\tvalid_set's multi_logloss: 0.717018\tvalid_set's macro_f1: 0.599725\n",
      "[100]\tvalid_set's multi_logloss: 0.717018\tvalid_set's macro_f1: 0.599725\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.774559\tvalid_set's macro_f1: 0.59178\n",
      "[100]\tvalid_set's multi_logloss: 0.721493\tvalid_set's macro_f1: 0.593553\n",
      "[100]\tvalid_set's multi_logloss: 0.721493\tvalid_set's macro_f1: 0.593553\n",
      "[150]\tvalid_set's multi_logloss: 0.721715\tvalid_set's macro_f1: 0.595365\n",
      "[150]\tvalid_set's multi_logloss: 0.721715\tvalid_set's macro_f1: 0.595365\n",
      "[200]\tvalid_set's multi_logloss: 0.730554\tvalid_set's macro_f1: 0.594423\n",
      "[200]\tvalid_set's multi_logloss: 0.730554\tvalid_set's macro_f1: 0.594423\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 500 rounds... Hyperparameters: {'learning_rate': 0.03, 'num_leaves': 63, 'feature_fraction': 0.9, 'bagging_fraction': 0.9, 'bagging_freq': 3, 'min_child_samples': 10, 'lambda_l1': 0.2, 'lambda_l2': 0.2}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.78036\tvalid_set's macro_f1: 0.595114\n",
      "[100]\tvalid_set's multi_logloss: 0.727233\tvalid_set's macro_f1: 0.597175\n",
      "[100]\tvalid_set's multi_logloss: 0.727233\tvalid_set's macro_f1: 0.597175\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L3\\model.pkl\n",
      "\t0.5998\t = Validation score   (macro_f1)\n",
      "\t572.85s\t = Training   runtime\n",
      "\t1.18s\t = Validation runtime\n",
      "\t366.9\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L3\\model.pkl\n",
      "\t0.5998\t = Validation score   (macro_f1)\n",
      "\t572.85s\t = Training   runtime\n",
      "\t1.18s\t = Validation runtime\n",
      "\t366.9\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: LightGBM_3_BAG_L3 ... Training model for up to 682.80s of the 682.70s of remaining time.\n",
      "Fitting model: LightGBM_3_BAG_L3 ... Training model for up to 682.80s of the 682.70s of remaining time.\n",
      "\tFitting LightGBM_3_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting LightGBM_3_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n",
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.857035\tvalid_set's macro_f1: 0.599883\n",
      "[100]\tvalid_set's multi_logloss: 0.744964\tvalid_set's macro_f1: 0.604123\n",
      "[100]\tvalid_set's multi_logloss: 0.744964\tvalid_set's macro_f1: 0.604123\n",
      "[150]\tvalid_set's multi_logloss: 0.724242\tvalid_set's macro_f1: 0.604708\n",
      "[150]\tvalid_set's multi_logloss: 0.724242\tvalid_set's macro_f1: 0.604708\n",
      "[200]\tvalid_set's multi_logloss: 0.721602\tvalid_set's macro_f1: 0.60406\n",
      "[200]\tvalid_set's multi_logloss: 0.721602\tvalid_set's macro_f1: 0.60406\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.857447\tvalid_set's macro_f1: 0.59722\n",
      "[100]\tvalid_set's multi_logloss: 0.743512\tvalid_set's macro_f1: 0.600131\n",
      "[100]\tvalid_set's multi_logloss: 0.743512\tvalid_set's macro_f1: 0.600131\n",
      "[150]\tvalid_set's multi_logloss: 0.722225\tvalid_set's macro_f1: 0.599505\n",
      "[150]\tvalid_set's multi_logloss: 0.722225\tvalid_set's macro_f1: 0.599505\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.860037\tvalid_set's macro_f1: 0.60106\n",
      "[100]\tvalid_set's multi_logloss: 0.748819\tvalid_set's macro_f1: 0.601701\n",
      "[100]\tvalid_set's multi_logloss: 0.748819\tvalid_set's macro_f1: 0.601701\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.840076\tvalid_set's macro_f1: 0.594793\n",
      "[100]\tvalid_set's multi_logloss: 0.721848\tvalid_set's macro_f1: 0.597627\n",
      "[100]\tvalid_set's multi_logloss: 0.721848\tvalid_set's macro_f1: 0.597627\n",
      "[150]\tvalid_set's multi_logloss: 0.699217\tvalid_set's macro_f1: 0.596073\n",
      "[150]\tvalid_set's multi_logloss: 0.699217\tvalid_set's macro_f1: 0.596073\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.859387\tvalid_set's macro_f1: 0.591112\n",
      "[100]\tvalid_set's multi_logloss: 0.746852\tvalid_set's macro_f1: 0.59674\n",
      "[100]\tvalid_set's multi_logloss: 0.746852\tvalid_set's macro_f1: 0.59674\n",
      "[150]\tvalid_set's multi_logloss: 0.726177\tvalid_set's macro_f1: 0.596778\n",
      "[150]\tvalid_set's multi_logloss: 0.726177\tvalid_set's macro_f1: 0.596778\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.851412\tvalid_set's macro_f1: 0.594689\n",
      "[100]\tvalid_set's multi_logloss: 0.734114\tvalid_set's macro_f1: 0.596314\n",
      "[100]\tvalid_set's multi_logloss: 0.734114\tvalid_set's macro_f1: 0.596314\n",
      "[150]\tvalid_set's multi_logloss: 0.711097\tvalid_set's macro_f1: 0.595837\n",
      "[150]\tvalid_set's multi_logloss: 0.711097\tvalid_set's macro_f1: 0.595837\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.860378\tvalid_set's macro_f1: 0.593216\n",
      "[100]\tvalid_set's multi_logloss: 0.747651\tvalid_set's macro_f1: 0.595467\n",
      "[100]\tvalid_set's multi_logloss: 0.747651\tvalid_set's macro_f1: 0.595467\n",
      "[150]\tvalid_set's multi_logloss: 0.726793\tvalid_set's macro_f1: 0.595744\n",
      "[150]\tvalid_set's multi_logloss: 0.726793\tvalid_set's macro_f1: 0.595744\n",
      "[200]\tvalid_set's multi_logloss: 0.723579\tvalid_set's macro_f1: 0.596858\n",
      "[200]\tvalid_set's multi_logloss: 0.723579\tvalid_set's macro_f1: 0.596858\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.850947\tvalid_set's macro_f1: 0.59584\n",
      "[100]\tvalid_set's multi_logloss: 0.736008\tvalid_set's macro_f1: 0.601575\n",
      "[100]\tvalid_set's multi_logloss: 0.736008\tvalid_set's macro_f1: 0.601575\n",
      "[150]\tvalid_set's multi_logloss: 0.714322\tvalid_set's macro_f1: 0.601007\n",
      "[150]\tvalid_set's multi_logloss: 0.714322\tvalid_set's macro_f1: 0.601007\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.850479\tvalid_set's macro_f1: 0.595185\n",
      "[100]\tvalid_set's multi_logloss: 0.736295\tvalid_set's macro_f1: 0.598585\n",
      "[100]\tvalid_set's multi_logloss: 0.736295\tvalid_set's macro_f1: 0.598585\n",
      "[150]\tvalid_set's multi_logloss: 0.715893\tvalid_set's macro_f1: 0.600293\n",
      "[150]\tvalid_set's multi_logloss: 0.715893\tvalid_set's macro_f1: 0.600293\n",
      "[200]\tvalid_set's multi_logloss: 0.713666\tvalid_set's macro_f1: 0.601994\n",
      "[200]\tvalid_set's multi_logloss: 0.713666\tvalid_set's macro_f1: 0.601994\n",
      "[250]\tvalid_set's multi_logloss: 0.716994\tvalid_set's macro_f1: 0.601722\n",
      "[250]\tvalid_set's multi_logloss: 0.716994\tvalid_set's macro_f1: 0.601722\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tFitting 400 rounds... Hyperparameters: {'learning_rate': 0.02, 'num_leaves': 127, 'feature_fraction': 0.85, 'bagging_fraction': 0.85, 'bagging_freq': 4, 'min_child_samples': 15, 'lambda_l1': 0.15, 'lambda_l2': 0.15, 'max_depth': 8}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[50]\tvalid_set's multi_logloss: 0.859409\tvalid_set's macro_f1: 0.587619\n",
      "[100]\tvalid_set's multi_logloss: 0.745898\tvalid_set's macro_f1: 0.596563\n",
      "[100]\tvalid_set's multi_logloss: 0.745898\tvalid_set's macro_f1: 0.596563\n",
      "[150]\tvalid_set's multi_logloss: 0.724079\tvalid_set's macro_f1: 0.595936\n",
      "[150]\tvalid_set's multi_logloss: 0.724079\tvalid_set's macro_f1: 0.595936\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L3\\model.pkl\n",
      "\t0.6021\t = Validation score   (macro_f1)\n",
      "\t456.31s\t = Training   runtime\n",
      "\t1.47s\t = Validation runtime\n",
      "\t363.2\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L3\\model.pkl\n",
      "\t0.6021\t = Validation score   (macro_f1)\n",
      "\t456.31s\t = Training   runtime\n",
      "\t1.47s\t = Validation runtime\n",
      "\t363.2\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_BAG_L3 ... Training model for up to 221.55s of the 221.44s of remaining time.\n",
      "Fitting model: RandomForest_BAG_L3 ... Training model for up to 221.55s of the 221.44s of remaining time.\n",
      "\tFitting RandomForest_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L3\\utils\\model_template.pkl\n",
      "\t5.04s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "\t5.04s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L3\\model.pkl\n",
      "\t0.5865\t = Validation score   (macro_f1)\n",
      "\t8.67s\t = Training   runtime\n",
      "\t20.49s\t = Validation runtime\n",
      "\t332.3\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L3\\model.pkl\n",
      "\t0.5865\t = Validation score   (macro_f1)\n",
      "\t8.67s\t = Training   runtime\n",
      "\t20.49s\t = Validation runtime\n",
      "\t332.3\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: RandomForest_2_BAG_L3 ... Training model for up to 191.36s of the 191.26s of remaining time.\n",
      "Fitting model: RandomForest_2_BAG_L3 ... Training model for up to 191.36s of the 191.26s of remaining time.\n",
      "\tFitting RandomForest_2_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting RandomForest_2_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L3\\utils\\model_template.pkl\n",
      "\tWarning: Reducing model 'n_estimators' from 200 -> 48 due to low time. Expected time usage reduced from 781.9s -> 189.8s...\n",
      "\tWarning: Reducing model 'n_estimators' from 200 -> 48 due to low time. Expected time usage reduced from 781.9s -> 189.8s...\n",
      "\t3.29s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "\t3.29s\t= Estimated out-of-fold prediction time...\n",
      "\t`use_child_oof` was specified for this model. It will function similarly to a bagged model, but will only fit one child model.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L3\\model.pkl\n",
      "\t0.596\t = Validation score   (macro_f1)\n",
      "\t62.3s\t = Training   runtime\n",
      "\t3.44s\t = Validation runtime\n",
      "\t373.5\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L3\\model.pkl\n",
      "\t0.596\t = Validation score   (macro_f1)\n",
      "\t62.3s\t = Training   runtime\n",
      "\t3.44s\t = Validation runtime\n",
      "\t373.5\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Fitting model: CatBoost_BAG_L3 ... Training model for up to 124.75s of the 124.64s of remaining time.\n",
      "Fitting model: CatBoost_BAG_L3 ... Training model for up to 124.75s of the 124.64s of remaining time.\n",
      "\tFitting CatBoost_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting CatBoost_BAG_L3 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L3\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L3\\utils\\model_template.pkl\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tFitting 10 child models (S1F1 - S2F5) | Fitting with SequentialLocalFoldFittingStrategy\n",
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0685660\ttest: 2.0692231\tbest: 2.0692231 (0)\ttotal: 399ms\tremaining: 1m 59s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 20.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.044046515\n",
      "bestIteration = 19\n",
      "\n",
      "Shrink model to first 20 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0717222\ttest: 2.0709848\tbest: 2.0709848 (0)\ttotal: 432ms\tremaining: 2m 9s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 20.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.040885374\n",
      "bestIteration = 19\n",
      "\n",
      "Shrink model to first 20 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0688128\ttest: 2.0703951\tbest: 2.0703951 (0)\ttotal: 416ms\tremaining: 2m 4s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 20.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.04833528\n",
      "bestIteration = 19\n",
      "\n",
      "Shrink model to first 20 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0722511\ttest: 2.0687983\tbest: 2.0687983 (0)\ttotal: 414ms\tremaining: 2m 3s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 21.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "20:\tlearn: 1.0274624\ttest: 1.0119217\tbest: 1.0119217 (20)\ttotal: 8.81s\tremaining: 1m 57s\n",
      "\n",
      "bestTest = 1.011921698\n",
      "bestIteration = 20\n",
      "\n",
      "Shrink model to first 21 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0703348\ttest: 2.0726468\tbest: 2.0726468 (0)\ttotal: 409ms\tremaining: 2m 2s\n",
      "20:\tlearn: 1.0218367\ttest: 1.0347000\tbest: 1.0347000 (20)\ttotal: 8.9s\tremaining: 1m 58s\n",
      "20:\tlearn: 1.0218367\ttest: 1.0347000\tbest: 1.0347000 (20)\ttotal: 8.9s\tremaining: 1m 58s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 22.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 1.017264377\n",
      "bestIteration = 21\n",
      "\n",
      "Shrink model to first 22 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0693418\ttest: 2.0681109\tbest: 2.0681109 (0)\ttotal: 427ms\tremaining: 2m 7s\n",
      "20:\tlearn: 1.0251675\ttest: 1.0258857\tbest: 1.0258857 (20)\ttotal: 8.92s\tremaining: 1m 58s\n",
      "20:\tlearn: 1.0251675\ttest: 1.0258857\tbest: 1.0258857 (20)\ttotal: 8.92s\tremaining: 1m 58s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 23.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.9927978255\n",
      "bestIteration = 22\n",
      "\n",
      "Shrink model to first 23 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0685917\ttest: 2.0712956\tbest: 2.0712956 (0)\ttotal: 421ms\tremaining: 2m 5s\n",
      "20:\tlearn: 1.0195913\ttest: 1.0311276\tbest: 1.0311276 (20)\ttotal: 8.97s\tremaining: 1m 59s\n",
      "20:\tlearn: 1.0195913\ttest: 1.0311276\tbest: 1.0311276 (20)\ttotal: 8.97s\tremaining: 1m 59s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 25.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.9711513133\n",
      "bestIteration = 24\n",
      "\n",
      "Shrink model to first 25 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0701113\ttest: 2.0685039\tbest: 2.0685039 (0)\ttotal: 408ms\tremaining: 2m 2s\n",
      "20:\tlearn: 1.0218307\ttest: 1.0186013\tbest: 1.0186013 (20)\ttotal: 8.95s\tremaining: 1m 58s\n",
      "20:\tlearn: 1.0218307\ttest: 1.0186013\tbest: 1.0186013 (20)\ttotal: 8.95s\tremaining: 1m 58s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 28.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.9238605735\n",
      "bestIteration = 27\n",
      "\n",
      "Shrink model to first 28 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0696114\ttest: 2.0690114\tbest: 2.0690114 (0)\ttotal: 434ms\tremaining: 2m 9s\n",
      "20:\tlearn: 1.0223364\ttest: 1.0222200\tbest: 1.0222200 (20)\ttotal: 8.97s\tremaining: 1m 59s\n",
      "20:\tlearn: 1.0223364\ttest: 1.0222200\tbest: 1.0222200 (20)\ttotal: 8.97s\tremaining: 1m 59s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 31.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.8949964312\n",
      "bestIteration = 30\n",
      "\n",
      "Shrink model to first 31 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tMany features detected (1289), dynamically setting 'colsample_bylevel' to 0.7757951900698216 to speed up training (Default = 1).\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n",
      "\tTo disable this functionality, explicitly specify 'colsample_bylevel' in the model hyperparameters.\n",
      "\tCatboost model hyperparameters: {'iterations': 300, 'learning_rate': 0.05, 'random_seed': 0, 'allow_writing_files': False, 'eval_metric': 'MultiClass', 'depth': 6, 'l2_leaf_reg': 3, 'bagging_temperature': 1, 'random_strength': 1, 'thread_count': 32, 'colsample_bylevel': 0.7757951900698216}\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0:\tlearn: 2.0680065\ttest: 2.0688916\tbest: 2.0688916 (0)\ttotal: 425ms\tremaining: 2m 7s\n",
      "20:\tlearn: 1.0210881\ttest: 1.0275916\tbest: 1.0275916 (20)\ttotal: 8.88s\tremaining: 1m 57s\n",
      "20:\tlearn: 1.0210881\ttest: 1.0275916\tbest: 1.0275916 (20)\ttotal: 8.88s\tremaining: 1m 57s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\tRan out of time, early stopping on iteration 39.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L3\\model.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L3\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L3\\model.pkl\n",
      "\t0.5764\t = Validation score   (macro_f1)\n",
      "\t117.25s\t = Training   runtime\n",
      "\t0.25s\t = Validation runtime\n",
      "\t379.5\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping CatBoost_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping CatBoost_3_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "\t0.5764\t = Validation score   (macro_f1)\n",
      "\t117.25s\t = Training   runtime\n",
      "\t0.25s\t = Validation runtime\n",
      "\t379.5\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping CatBoost_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping CatBoost_3_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping ExtraTrees_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L3 due to lack of time remaining.\n",
      "Skipping ExtraTrees_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping XGBoost_3_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Skipping NeuralNetTorch_2_BAG_L3 due to lack of time remaining.\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L1\\utils\\oof.pkl\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "bestTest = 0.8445071969\n",
      "bestIteration = 38\n",
      "\n",
      "Shrink model to first 39 iterations.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_3_BAG_L1\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_2_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\ExtraTrees_BAG_L2\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_2_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\LightGBM_3_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\RandomForest_2_BAG_L3\\utils\\oof.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\CatBoost_BAG_L3\\utils\\oof.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L4: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L4 ... Training model for up to 360.00s of the 4.89s of remaining time.\n",
      "\tFitting WeightedEnsemble_L4 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L4\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L4\\utils\\model_template.pkl\n",
      "Model configs that will be trained (in order):\n",
      "\tWeightedEnsemble_L4: \t{'ag_args': {'problem_types': ['binary', 'multiclass', 'regression', 'quantile', 'softclass'], 'valid_base': False, 'name_bag_suffix': '', 'model_type': <class 'autogluon.core.models.greedy_ensemble.greedy_weighted_ensemble_model.GreedyWeightedEnsembleModel'>, 'priority': 0}, 'ag_args_ensemble': {'save_bag_folds': True}}\n",
      "Fitting model: WeightedEnsemble_L4 ... Training model for up to 360.00s of the 4.89s of remaining time.\n",
      "\tFitting WeightedEnsemble_L4 with 'num_gpus': 0, 'num_cpus': 32\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L4\\utils\\model_template.pkl\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L4\\utils\\model_template.pkl\n",
      "Ensemble size: 10\n",
      "Ensemble weights: \n",
      "[0.  0.  0.  0.  0.  0.  0.  0.  0.5 0.3 0.  0.  0.  0.1 0.  0.  0.1 0.\n",
      " 0.  0.  0.  0. ]\n",
      "\t0.1s\t= Estimated out-of-fold prediction time...\n",
      "Ensemble size: 10\n",
      "Ensemble weights: \n",
      "[0.  0.  0.  0.  0.  0.  0.  0.  0.5 0.3 0.  0.  0.  0.1 0.  0.  0.1 0.\n",
      " 0.  0.  0.  0. ]\n",
      "\t0.1s\t= Estimated out-of-fold prediction time...\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L4\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L4\\utils\\oof.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L4\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_BAG_L2': 0.5, 'LightGBM_2_BAG_L2': 0.3, 'CatBoost_BAG_L2': 0.1, 'LightGBM_BAG_L3': 0.1}\n",
      "\t0.6061\t = Validation score   (macro_f1)\n",
      "\t5.17s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t366.3\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\WeightedEnsemble_L4\\model.pkl\n",
      "\tEnsemble Weights: {'LightGBM_BAG_L2': 0.5, 'LightGBM_2_BAG_L2': 0.3, 'CatBoost_BAG_L2': 0.1, 'LightGBM_BAG_L3': 0.1}\n",
      "\t0.6061\t = Validation score   (macro_f1)\n",
      "\t5.17s\t = Training   runtime\n",
      "\t0.01s\t = Validation runtime\n",
      "\t366.3\t = Inference  throughput (rows/s | 10280 batch size)\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "AutoGluon training complete, total runtime = 8099.98s ... Best model: WeightedEnsemble_L3 | Estimated inference throughput: 732.4 rows/s (10280 batch size)\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\learner.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\predictor.pkl\n",
      "AutoGluon training complete, total runtime = 8099.98s ... Best model: WeightedEnsemble_L3 | Estimated inference throughput: 732.4 rows/s (10280 batch size)\n",
      "Loading: e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\models\\trainer.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\learner.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\predictor.pkl\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\version.txt with contents \"1.3.1\"\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\metadata.json\n",
      "TabularPredictor saved. To load, use: predictor = TabularPredictor.load(\"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\")\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\version.txt with contents \"1.3.1\"\n",
      "Saving e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\\metadata.json\n",
      "TabularPredictor saved. To load, use: predictor = TabularPredictor.load(\"e:\\DevWork\\6-Model\\star-cup2025\\Model\\model\\autogluon_advanced\")\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "====================================================================================================\n",
      "高级模型训练完成!\n",
      "====================================================================================================\n"
     ]
    }
   ],
   "source": [
    "print(\"=\"*100)\n",
    "print(\"步骤6: Autogluon模型训练 - 高级版本(深度优化)\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 创建输出目录\n",
    "output_dir_advanced = './model/autogluon_advanced'\n",
    "os.makedirs(output_dir_advanced, exist_ok=True)\n",
    "\n",
    "print(f\"\\n模型输出目录: {output_dir_advanced}\")\n",
    "print(f\"开始训练高级版本模型(深度优化)...\")\n",
    "print(f\"预计训练时间: 2-3小时\")\n",
    "print(\"\\n特性:\")\n",
    "print(\"  1. 多层Stacking集成\")\n",
    "print(\"  2. 更精细的超参数搜索\")\n",
    "print(\"  3. 多种Bagging策略\")\n",
    "print(\"  4. 神经网络模型集成\")\n",
    "print(\"  5. 特征工程增强\")\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "\n",
    "# 定义详细的超参数空间\n",
    "hyperparameters_advanced = {\n",
    "    # LightGBM模型组\n",
    "    'GBM': [\n",
    "        # 快速模型\n",
    "        {\n",
    "            'num_boost_round': 300,\n",
    "            'learning_rate': 0.05,\n",
    "            'num_leaves': 31,\n",
    "            'feature_fraction': 0.8,\n",
    "            'bagging_fraction': 0.8,\n",
    "            'bagging_freq': 5,\n",
    "            'min_child_samples': 20,\n",
    "            'lambda_l1': 0.1,\n",
    "            'lambda_l2': 0.1,\n",
    "        },\n",
    "        # 深度模型\n",
    "        {\n",
    "            'num_boost_round': 500,\n",
    "            'learning_rate': 0.03,\n",
    "            'num_leaves': 63,\n",
    "            'feature_fraction': 0.9,\n",
    "            'bagging_fraction': 0.9,\n",
    "            'bagging_freq': 3,\n",
    "            'min_child_samples': 10,\n",
    "            'lambda_l1': 0.2,\n",
    "            'lambda_l2': 0.2,\n",
    "        },\n",
    "        # 保守模型\n",
    "        {\n",
    "            'num_boost_round': 400,\n",
    "            'learning_rate': 0.02,\n",
    "            'num_leaves': 127,\n",
    "            'feature_fraction': 0.85,\n",
    "            'bagging_fraction': 0.85,\n",
    "            'bagging_freq': 4,\n",
    "            'min_child_samples': 15,\n",
    "            'lambda_l1': 0.15,\n",
    "            'lambda_l2': 0.15,\n",
    "            'max_depth': 8,\n",
    "        },\n",
    "    ],\n",
    "    \n",
    "    # CatBoost模型组\n",
    "    'CAT': [\n",
    "        {\n",
    "            'iterations': 300,\n",
    "            'learning_rate': 0.05,\n",
    "            'depth': 6,\n",
    "            'l2_leaf_reg': 3,\n",
    "            'bagging_temperature': 1,\n",
    "            'random_strength': 1,\n",
    "        },\n",
    "        {\n",
    "            'iterations': 500,\n",
    "            'learning_rate': 0.03,\n",
    "            'depth': 8,\n",
    "            'l2_leaf_reg': 5,\n",
    "            'bagging_temperature': 0.8,\n",
    "            'random_strength': 1.2,\n",
    "        },\n",
    "        {\n",
    "            'iterations': 400,\n",
    "            'learning_rate': 0.04,\n",
    "            'depth': 7,\n",
    "            'l2_leaf_reg': 4,\n",
    "            'bagging_temperature': 0.9,\n",
    "            'random_strength': 1.1,\n",
    "            'border_count': 128,\n",
    "        },\n",
    "    ],\n",
    "    \n",
    "    # XGBoost模型组\n",
    "    'XGB': [\n",
    "        {\n",
    "            'n_estimators': 300,\n",
    "            'learning_rate': 0.05,\n",
    "            'max_depth': 6,\n",
    "            'colsample_bytree': 0.8,\n",
    "            'subsample': 0.8,\n",
    "            'min_child_weight': 3,\n",
    "            'reg_alpha': 0.1,\n",
    "            'reg_lambda': 0.1,\n",
    "        },\n",
    "        {\n",
    "            'n_estimators': 500,\n",
    "            'learning_rate': 0.03,\n",
    "            'max_depth': 8,\n",
    "            'colsample_bytree': 0.9,\n",
    "            'subsample': 0.9,\n",
    "            'min_child_weight': 1,\n",
    "            'reg_alpha': 0.2,\n",
    "            'reg_lambda': 0.2,\n",
    "        },\n",
    "        {\n",
    "            'n_estimators': 400,\n",
    "            'learning_rate': 0.04,\n",
    "            'max_depth': 7,\n",
    "            'colsample_bytree': 0.85,\n",
    "            'subsample': 0.85,\n",
    "            'min_child_weight': 2,\n",
    "            'reg_alpha': 0.15,\n",
    "            'reg_lambda': 0.15,\n",
    "        },\n",
    "    ],\n",
    "    \n",
    "    # 随机森林\n",
    "    'RF': [\n",
    "        {\n",
    "            'n_estimators': 300,\n",
    "            'max_depth': 15,\n",
    "            'min_samples_split': 5,\n",
    "            'min_samples_leaf': 2,\n",
    "            'max_features': 'sqrt',\n",
    "        },\n",
    "        {\n",
    "            'n_estimators': 200,\n",
    "            'max_depth': 20,\n",
    "            'min_samples_split': 10,\n",
    "            'min_samples_leaf': 4,\n",
    "            'max_features': 0.8,\n",
    "        },\n",
    "    ],\n",
    "    \n",
    "    # ExtraTrees\n",
    "    'XT': [\n",
    "        {\n",
    "            'n_estimators': 300,\n",
    "            'max_depth': 15,\n",
    "            'min_samples_split': 5,\n",
    "            'min_samples_leaf': 2,\n",
    "        },\n",
    "        {\n",
    "            'n_estimators': 200,\n",
    "            'max_depth': 20,\n",
    "            'min_samples_split': 10,\n",
    "            'min_samples_leaf': 4,\n",
    "        },\n",
    "    ],\n",
    "    \n",
    "    # 神经网络\n",
    "    'NN_TORCH': [\n",
    "        {\n",
    "            'num_epochs': 50,\n",
    "            'learning_rate': 0.001,\n",
    "            'weight_decay': 0.0001,\n",
    "            'dropout_prob': 0.1,\n",
    "        },\n",
    "        {\n",
    "            'num_epochs': 100,\n",
    "            'learning_rate': 0.0005,\n",
    "            'weight_decay': 0.00001,\n",
    "            'dropout_prob': 0.2,\n",
    "        },\n",
    "    ],\n",
    "    \n",
    "    # FastAI神经网络\n",
    "    'FASTAI': [\n",
    "        {\n",
    "            'epochs': 50,\n",
    "            'lr': 0.001,\n",
    "        },\n",
    "    ],\n",
    "}\n",
    "\n",
    "# 检查类别不平衡情况\n",
    "imbalance_ratio = max(class_weights.values()) / min(class_weights.values())\n",
    "print(f\"\\n类别不平衡比: {imbalance_ratio:.2f}:1\")\n",
    "if imbalance_ratio > 5:\n",
    "    print(\"警告: 存在严重类别不平衡!\")\n",
    "    print(\"Autogluon会自动在模型训练时处理类别不平衡问题\")\n",
    "else:\n",
    "    print(\"类别分布相对均衡\")\n",
    "\n",
    "# 训练高级模型\n",
    "print(f\"\\n开始训练...\")\n",
    "predictor_advanced = TabularPredictor(\n",
    "    label='FLAG',\n",
    "    problem_type='multiclass',\n",
    "    eval_metric=macro_f1_scorer,\n",
    "    path=output_dir_advanced,\n",
    "    verbosity=1  \n",
    ").fit(\n",
    "    train_data=train_data_ag,\n",
    "    time_limit=10800,  # 3小时\n",
    "    presets='best_quality',\n",
    "    num_bag_folds=5,  # 5折Bagging\n",
    "    num_bag_sets=2,  # 2组Bagging\n",
    "    num_stack_levels=2,  # 2层Stacking\n",
    "    hyperparameters=hyperparameters_advanced,\n",
    "    ag_args_fit={\n",
    "        'num_gpus': 0,  # 如果有GPU可以设置为1\n",
    "    },\n",
    "    excluded_model_types=['KNN'],  # 排除KNN(太慢)\n",
    ")\n",
    "\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"高级模型训练完成!\")\n",
    "print(\"=\"*100)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1b482401",
   "metadata": {},
   "source": [
    "## 高级模型全面评估与分析"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "913d0c8d",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "====================================================================================================\n",
      "步骤7: 高级模型全面评估\n",
      "====================================================================================================\n",
      "\n",
      "完整模型排行榜:\n",
      "                    model  score_val eval_metric  pred_time_val     fit_time  \\\n",
      "0     WeightedEnsemble_L3   0.606428    macro_f1      40.210533  5468.513042   \n",
      "1     WeightedEnsemble_L4   0.606056    macro_f1      97.552551  6686.364866   \n",
      "2         LightGBM_BAG_L2   0.604002    macro_f1      38.504630  3761.276448   \n",
      "3       LightGBM_2_BAG_L2   0.603631    macro_f1      38.581938  3985.383135   \n",
      "4       LightGBM_3_BAG_L3   0.602101    macro_f1      97.786942  6918.744264   \n",
      "5       LightGBM_3_BAG_L2   0.602009    macro_f1      38.650451  3973.717979   \n",
      "6         LightGBM_BAG_L3   0.601428    macro_f1      97.542550  6681.196767   \n",
      "7       LightGBM_2_BAG_L3   0.599846    macro_f1      97.500811  7035.286042   \n",
      "8     WeightedEnsemble_L2   0.597977    macro_f1       3.196155  1615.272182   \n",
      "9       LightGBM_2_BAG_L1   0.597729    macro_f1       0.986845   674.288476   \n",
      "10  RandomForest_2_BAG_L2   0.597220    macro_f1      51.484201  3709.176247   \n",
      "11  RandomForest_2_BAG_L3   0.595971    macro_f1      99.764107  6524.728137   \n",
      "12        CatBoost_BAG_L2   0.595882    macro_f1      37.701293  4792.057637   \n",
      "13        LightGBM_BAG_L1   0.593981    macro_f1       0.975422   332.775919   \n",
      "14      LightGBM_3_BAG_L1   0.592554    macro_f1       1.224889   606.358941   \n",
      "15    RandomForest_BAG_L3   0.586510    macro_f1     116.810442  6471.102604   \n",
      "16    RandomForest_BAG_L2   0.583700    macro_f1      57.598089  3544.580840   \n",
      "17      ExtraTrees_BAG_L2   0.581908    macro_f1      56.941174  3540.298513   \n",
      "18        CatBoost_BAG_L3   0.576382    macro_f1      96.570590  6579.681410   \n",
      "19      CatBoost_2_BAG_L2   0.573619    macro_f1      37.910695  3908.199152   \n",
      "20  RandomForest_2_BAG_L1   0.569952    macro_f1      13.433929   136.507408   \n",
      "21        CatBoost_BAG_L1   0.565843    macro_f1       0.288595  1130.618673   \n",
      "22    RandomForest_BAG_L1   0.562658    macro_f1      19.275902     7.234697   \n",
      "23      CatBoost_2_BAG_L1   0.507104    macro_f1       0.617326   627.713051   \n",
      "24      CatBoost_3_BAG_L1   0.384562    macro_f1       0.490257    20.539681   \n",
      "\n",
      "    pred_time_val_marginal  fit_time_marginal  stack_level  can_infer  \\\n",
      "0                 0.009000           1.869515            3       True   \n",
      "1                 0.010000           5.168099            4       True   \n",
      "2                 1.211466         225.239601            2       True   \n",
      "3                 1.288774         449.346288            2       True   \n",
      "4                 1.466621         456.312239            3       True   \n",
      "5                 1.357286         437.681133            2       True   \n",
      "6                 1.222230         218.764741            3       True   \n",
      "7                 1.180490         572.854017            3       True   \n",
      "8                 0.009000           1.848847            2       True   \n",
      "9                 0.986845         674.288476            1       True   \n",
      "10               14.191037         173.139400            2       True   \n",
      "11                3.443786          62.296112            3       True   \n",
      "12                0.408128        1256.020790            2       True   \n",
      "13                0.975422         332.775919            1       True   \n",
      "14                1.224889         606.358941            1       True   \n",
      "15               20.490122           8.670578            3       True   \n",
      "16               20.304925           8.543994            2       True   \n",
      "17               19.648009           4.261666            2       True   \n",
      "18                0.250269         117.249385            3       True   \n",
      "19                0.617531         372.162305            2       True   \n",
      "20               13.433929         136.507408            1       True   \n",
      "21                0.288595        1130.618673            1       True   \n",
      "22               19.275902           7.234697            1       True   \n",
      "23                0.617326         627.713051            1       True   \n",
      "24                0.490257          20.539681            1       True   \n",
      "\n",
      "    fit_order  ...                                    hyperparameters  \\\n",
      "0          18  ...  {'use_orig_features': False, 'valid_stacker': ...   \n",
      "1          25  ...  {'use_orig_features': False, 'valid_stacker': ...   \n",
      "2          10  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "3          11  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "4          21  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "5          12  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "6          19  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "7          20  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "8           9  ...  {'use_orig_features': False, 'valid_stacker': ...   \n",
      "9           2  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "10         14  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "11         23  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "12         15  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "13          1  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "14          3  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "15         22  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "16         13  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "17         17  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "18         24  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "19         16  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "20          5  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "21          6  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "22          4  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "23          7  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "24          8  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "\n",
      "    hyperparameters_fit                                        ag_args_fit  \\\n",
      "0                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "1                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "2                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "3                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "4                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "5                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "6                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "7                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "8                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "9                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "10                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "11                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "12                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "13                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "14                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "15                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "16                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "17                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "18                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "19                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "20                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "21                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "22                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "23                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "24                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "\n",
      "                                             features  compile_time  \\\n",
      "0   [LightGBM_2_BAG_L2_9, LightGBM_BAG_L2_8, Light...          None   \n",
      "1   [LightGBM_2_BAG_L2_9, LightGBM_BAG_L2_8, Light...          None   \n",
      "2   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "3   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "4   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "5   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "6   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "7   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "8   [LightGBM_BAG_L1_2, LightGBM_2_BAG_L1_0, Light...          None   \n",
      "9   [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "10  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "11  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "12  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "13  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "14  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "15  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "16  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "17  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "18  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "19  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "20  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "21  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "22  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "23  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "24  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "\n",
      "                                child_hyperparameters  \\\n",
      "0    {'ensemble_size': 25, 'subsample_size': 1000000}   \n",
      "1    {'ensemble_size': 25, 'subsample_size': 1000000}   \n",
      "2   {'learning_rate': 0.05, 'num_boost_round': 300...   \n",
      "3   {'learning_rate': 0.03, 'num_boost_round': 500...   \n",
      "4   {'learning_rate': 0.02, 'num_boost_round': 400...   \n",
      "5   {'learning_rate': 0.02, 'num_boost_round': 400...   \n",
      "6   {'learning_rate': 0.05, 'num_boost_round': 300...   \n",
      "7   {'learning_rate': 0.03, 'num_boost_round': 500...   \n",
      "8    {'ensemble_size': 25, 'subsample_size': 1000000}   \n",
      "9   {'learning_rate': 0.03, 'num_boost_round': 500...   \n",
      "10  {'n_estimators': 200, 'max_leaf_nodes': 15000,...   \n",
      "11  {'n_estimators': 200, 'max_leaf_nodes': 15000,...   \n",
      "12  {'iterations': 300, 'learning_rate': 0.05, 'ra...   \n",
      "13  {'learning_rate': 0.05, 'num_boost_round': 300...   \n",
      "14  {'learning_rate': 0.02, 'num_boost_round': 400...   \n",
      "15  {'n_estimators': 300, 'max_leaf_nodes': 15000,...   \n",
      "16  {'n_estimators': 300, 'max_leaf_nodes': 15000,...   \n",
      "17  {'n_estimators': 300, 'max_leaf_nodes': 15000,...   \n",
      "18  {'iterations': 300, 'learning_rate': 0.05, 'ra...   \n",
      "19  {'iterations': 500, 'learning_rate': 0.03, 'ra...   \n",
      "20  {'n_estimators': 200, 'max_leaf_nodes': 15000,...   \n",
      "21  {'iterations': 300, 'learning_rate': 0.05, 'ra...   \n",
      "22  {'n_estimators': 300, 'max_leaf_nodes': 15000,...   \n",
      "23  {'iterations': 500, 'learning_rate': 0.03, 'ra...   \n",
      "24  {'iterations': 400, 'learning_rate': 0.04, 'ra...   \n",
      "\n",
      "    child_hyperparameters_fit  \\\n",
      "0       {'ensemble_size': 12}   \n",
      "1       {'ensemble_size': 10}   \n",
      "2     {'num_boost_round': 52}   \n",
      "3     {'num_boost_round': 81}   \n",
      "4    {'num_boost_round': 121}   \n",
      "5    {'num_boost_round': 117}   \n",
      "6     {'num_boost_round': 45}   \n",
      "7    {'num_boost_round': 122}   \n",
      "8       {'ensemble_size': 14}   \n",
      "9    {'num_boost_round': 161}   \n",
      "10      {'n_estimators': 200}   \n",
      "11       {'n_estimators': 48}   \n",
      "12        {'iterations': 300}   \n",
      "13   {'num_boost_round': 122}   \n",
      "14   {'num_boost_round': 225}   \n",
      "15      {'n_estimators': 300}   \n",
      "16      {'n_estimators': 300}   \n",
      "17      {'n_estimators': 279}   \n",
      "18         {'iterations': 25}   \n",
      "19         {'iterations': 31}   \n",
      "20      {'n_estimators': 200}   \n",
      "21        {'iterations': 300}   \n",
      "22      {'n_estimators': 300}   \n",
      "23         {'iterations': 55}   \n",
      "24          {'iterations': 2}   \n",
      "\n",
      "                                    child_ag_args_fit  \\\n",
      "0   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "1   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "2   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "3   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "4   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "5   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "6   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "7   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "8   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "9   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "10  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "11  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "12  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "13  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "14  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "15  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "16  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "17  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "18  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "19  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "20  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "21  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "22  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "23  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "24  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "\n",
      "                                            ancestors  \\\n",
      "0   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "1   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "2   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "3   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "4   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "5   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "6   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "7   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "8   [LightGBM_3_BAG_L1, LightGBM_BAG_L1, LightGBM_...   \n",
      "9                                                  []   \n",
      "10  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "11  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "12  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "13                                                 []   \n",
      "14                                                 []   \n",
      "15  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "16  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "17  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "18  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "19  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "20                                                 []   \n",
      "21                                                 []   \n",
      "22                                                 []   \n",
      "23                                                 []   \n",
      "24                                                 []   \n",
      "\n",
      "                                          descendants  \n",
      "0                                                  []  \n",
      "1                                                  []  \n",
      "2   [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "3   [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "4                                                  []  \n",
      "5   [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "6                               [WeightedEnsemble_L4]  \n",
      "7                                                  []  \n",
      "8                                                  []  \n",
      "9   [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "10  [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "11                                                 []  \n",
      "12  [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "13  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "14  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "15                                                 []  \n",
      "16  [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "17  [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "18                                                 []  \n",
      "19  [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "20  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "21  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "22  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "23  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "24  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "\n",
      "[25 rows x 32 columns]\n",
      "\n",
      "排行榜已保存: ./model/leaderboard_advanced.csv\n",
      "\n",
      "最佳模型: WeightedEnsemble_L3\n",
      "最佳分数 (Macro-F1): 0.606428\n",
      "\n",
      "完整模型排行榜:\n",
      "                    model  score_val eval_metric  pred_time_val     fit_time  \\\n",
      "0     WeightedEnsemble_L3   0.606428    macro_f1      40.210533  5468.513042   \n",
      "1     WeightedEnsemble_L4   0.606056    macro_f1      97.552551  6686.364866   \n",
      "2         LightGBM_BAG_L2   0.604002    macro_f1      38.504630  3761.276448   \n",
      "3       LightGBM_2_BAG_L2   0.603631    macro_f1      38.581938  3985.383135   \n",
      "4       LightGBM_3_BAG_L3   0.602101    macro_f1      97.786942  6918.744264   \n",
      "5       LightGBM_3_BAG_L2   0.602009    macro_f1      38.650451  3973.717979   \n",
      "6         LightGBM_BAG_L3   0.601428    macro_f1      97.542550  6681.196767   \n",
      "7       LightGBM_2_BAG_L3   0.599846    macro_f1      97.500811  7035.286042   \n",
      "8     WeightedEnsemble_L2   0.597977    macro_f1       3.196155  1615.272182   \n",
      "9       LightGBM_2_BAG_L1   0.597729    macro_f1       0.986845   674.288476   \n",
      "10  RandomForest_2_BAG_L2   0.597220    macro_f1      51.484201  3709.176247   \n",
      "11  RandomForest_2_BAG_L3   0.595971    macro_f1      99.764107  6524.728137   \n",
      "12        CatBoost_BAG_L2   0.595882    macro_f1      37.701293  4792.057637   \n",
      "13        LightGBM_BAG_L1   0.593981    macro_f1       0.975422   332.775919   \n",
      "14      LightGBM_3_BAG_L1   0.592554    macro_f1       1.224889   606.358941   \n",
      "15    RandomForest_BAG_L3   0.586510    macro_f1     116.810442  6471.102604   \n",
      "16    RandomForest_BAG_L2   0.583700    macro_f1      57.598089  3544.580840   \n",
      "17      ExtraTrees_BAG_L2   0.581908    macro_f1      56.941174  3540.298513   \n",
      "18        CatBoost_BAG_L3   0.576382    macro_f1      96.570590  6579.681410   \n",
      "19      CatBoost_2_BAG_L2   0.573619    macro_f1      37.910695  3908.199152   \n",
      "20  RandomForest_2_BAG_L1   0.569952    macro_f1      13.433929   136.507408   \n",
      "21        CatBoost_BAG_L1   0.565843    macro_f1       0.288595  1130.618673   \n",
      "22    RandomForest_BAG_L1   0.562658    macro_f1      19.275902     7.234697   \n",
      "23      CatBoost_2_BAG_L1   0.507104    macro_f1       0.617326   627.713051   \n",
      "24      CatBoost_3_BAG_L1   0.384562    macro_f1       0.490257    20.539681   \n",
      "\n",
      "    pred_time_val_marginal  fit_time_marginal  stack_level  can_infer  \\\n",
      "0                 0.009000           1.869515            3       True   \n",
      "1                 0.010000           5.168099            4       True   \n",
      "2                 1.211466         225.239601            2       True   \n",
      "3                 1.288774         449.346288            2       True   \n",
      "4                 1.466621         456.312239            3       True   \n",
      "5                 1.357286         437.681133            2       True   \n",
      "6                 1.222230         218.764741            3       True   \n",
      "7                 1.180490         572.854017            3       True   \n",
      "8                 0.009000           1.848847            2       True   \n",
      "9                 0.986845         674.288476            1       True   \n",
      "10               14.191037         173.139400            2       True   \n",
      "11                3.443786          62.296112            3       True   \n",
      "12                0.408128        1256.020790            2       True   \n",
      "13                0.975422         332.775919            1       True   \n",
      "14                1.224889         606.358941            1       True   \n",
      "15               20.490122           8.670578            3       True   \n",
      "16               20.304925           8.543994            2       True   \n",
      "17               19.648009           4.261666            2       True   \n",
      "18                0.250269         117.249385            3       True   \n",
      "19                0.617531         372.162305            2       True   \n",
      "20               13.433929         136.507408            1       True   \n",
      "21                0.288595        1130.618673            1       True   \n",
      "22               19.275902           7.234697            1       True   \n",
      "23                0.617326         627.713051            1       True   \n",
      "24                0.490257          20.539681            1       True   \n",
      "\n",
      "    fit_order  ...                                    hyperparameters  \\\n",
      "0          18  ...  {'use_orig_features': False, 'valid_stacker': ...   \n",
      "1          25  ...  {'use_orig_features': False, 'valid_stacker': ...   \n",
      "2          10  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "3          11  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "4          21  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "5          12  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "6          19  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "7          20  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "8           9  ...  {'use_orig_features': False, 'valid_stacker': ...   \n",
      "9           2  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "10         14  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "11         23  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "12         15  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "13          1  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "14          3  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "15         22  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "16         13  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "17         17  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "18         24  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "19         16  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "20          5  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "21          6  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "22          4  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "23          7  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "24          8  ...  {'use_orig_features': True, 'valid_stacker': T...   \n",
      "\n",
      "    hyperparameters_fit                                        ag_args_fit  \\\n",
      "0                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "1                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "2                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "3                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "4                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "5                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "6                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "7                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "8                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "9                    {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "10                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "11                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "12                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "13                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "14                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "15                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "16                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "17                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "18                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "19                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "20                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "21                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "22                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "23                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "24                   {}  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "\n",
      "                                             features  compile_time  \\\n",
      "0   [LightGBM_2_BAG_L2_9, LightGBM_BAG_L2_8, Light...          None   \n",
      "1   [LightGBM_2_BAG_L2_9, LightGBM_BAG_L2_8, Light...          None   \n",
      "2   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "3   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "4   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "5   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "6   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "7   [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "8   [LightGBM_BAG_L1_2, LightGBM_2_BAG_L1_0, Light...          None   \n",
      "9   [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "10  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "11  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "12  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "13  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "14  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "15  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "16  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "17  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "18  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "19  [page_14340e20375cc540a6b7b0205f14c301_last_vi...          None   \n",
      "20  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "21  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "22  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "23  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "24  [mb_qrytrnflw_top9_transcode_count, page_14340...          None   \n",
      "\n",
      "                                child_hyperparameters  \\\n",
      "0    {'ensemble_size': 25, 'subsample_size': 1000000}   \n",
      "1    {'ensemble_size': 25, 'subsample_size': 1000000}   \n",
      "2   {'learning_rate': 0.05, 'num_boost_round': 300...   \n",
      "3   {'learning_rate': 0.03, 'num_boost_round': 500...   \n",
      "4   {'learning_rate': 0.02, 'num_boost_round': 400...   \n",
      "5   {'learning_rate': 0.02, 'num_boost_round': 400...   \n",
      "6   {'learning_rate': 0.05, 'num_boost_round': 300...   \n",
      "7   {'learning_rate': 0.03, 'num_boost_round': 500...   \n",
      "8    {'ensemble_size': 25, 'subsample_size': 1000000}   \n",
      "9   {'learning_rate': 0.03, 'num_boost_round': 500...   \n",
      "10  {'n_estimators': 200, 'max_leaf_nodes': 15000,...   \n",
      "11  {'n_estimators': 200, 'max_leaf_nodes': 15000,...   \n",
      "12  {'iterations': 300, 'learning_rate': 0.05, 'ra...   \n",
      "13  {'learning_rate': 0.05, 'num_boost_round': 300...   \n",
      "14  {'learning_rate': 0.02, 'num_boost_round': 400...   \n",
      "15  {'n_estimators': 300, 'max_leaf_nodes': 15000,...   \n",
      "16  {'n_estimators': 300, 'max_leaf_nodes': 15000,...   \n",
      "17  {'n_estimators': 300, 'max_leaf_nodes': 15000,...   \n",
      "18  {'iterations': 300, 'learning_rate': 0.05, 'ra...   \n",
      "19  {'iterations': 500, 'learning_rate': 0.03, 'ra...   \n",
      "20  {'n_estimators': 200, 'max_leaf_nodes': 15000,...   \n",
      "21  {'iterations': 300, 'learning_rate': 0.05, 'ra...   \n",
      "22  {'n_estimators': 300, 'max_leaf_nodes': 15000,...   \n",
      "23  {'iterations': 500, 'learning_rate': 0.03, 'ra...   \n",
      "24  {'iterations': 400, 'learning_rate': 0.04, 'ra...   \n",
      "\n",
      "    child_hyperparameters_fit  \\\n",
      "0       {'ensemble_size': 12}   \n",
      "1       {'ensemble_size': 10}   \n",
      "2     {'num_boost_round': 52}   \n",
      "3     {'num_boost_round': 81}   \n",
      "4    {'num_boost_round': 121}   \n",
      "5    {'num_boost_round': 117}   \n",
      "6     {'num_boost_round': 45}   \n",
      "7    {'num_boost_round': 122}   \n",
      "8       {'ensemble_size': 14}   \n",
      "9    {'num_boost_round': 161}   \n",
      "10      {'n_estimators': 200}   \n",
      "11       {'n_estimators': 48}   \n",
      "12        {'iterations': 300}   \n",
      "13   {'num_boost_round': 122}   \n",
      "14   {'num_boost_round': 225}   \n",
      "15      {'n_estimators': 300}   \n",
      "16      {'n_estimators': 300}   \n",
      "17      {'n_estimators': 279}   \n",
      "18         {'iterations': 25}   \n",
      "19         {'iterations': 31}   \n",
      "20      {'n_estimators': 200}   \n",
      "21        {'iterations': 300}   \n",
      "22      {'n_estimators': 300}   \n",
      "23         {'iterations': 55}   \n",
      "24          {'iterations': 2}   \n",
      "\n",
      "                                    child_ag_args_fit  \\\n",
      "0   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "1   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "2   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "3   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "4   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "5   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "6   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "7   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "8   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "9   {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "10  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "11  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "12  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "13  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "14  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "15  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "16  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "17  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "18  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "19  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "20  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "21  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "22  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "23  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "24  {'max_memory_usage_ratio': 1.0, 'max_time_limi...   \n",
      "\n",
      "                                            ancestors  \\\n",
      "0   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "1   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "2   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "3   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "4   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "5   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "6   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "7   [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "8   [LightGBM_3_BAG_L1, LightGBM_BAG_L1, LightGBM_...   \n",
      "9                                                  []   \n",
      "10  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "11  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "12  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "13                                                 []   \n",
      "14                                                 []   \n",
      "15  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "16  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "17  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "18  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "19  [CatBoost_BAG_L1, LightGBM_BAG_L1, RandomFores...   \n",
      "20                                                 []   \n",
      "21                                                 []   \n",
      "22                                                 []   \n",
      "23                                                 []   \n",
      "24                                                 []   \n",
      "\n",
      "                                          descendants  \n",
      "0                                                  []  \n",
      "1                                                  []  \n",
      "2   [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "3   [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "4                                                  []  \n",
      "5   [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "6                               [WeightedEnsemble_L4]  \n",
      "7                                                  []  \n",
      "8                                                  []  \n",
      "9   [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "10  [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "11                                                 []  \n",
      "12  [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "13  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "14  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "15                                                 []  \n",
      "16  [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "17  [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "18                                                 []  \n",
      "19  [LightGBM_3_BAG_L3, WeightedEnsemble_L4, Light...  \n",
      "20  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "21  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "22  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "23  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "24  [CatBoost_2_BAG_L2, LightGBM_3_BAG_L2, ExtraTr...  \n",
      "\n",
      "[25 rows x 32 columns]\n",
      "\n",
      "排行榜已保存: ./model/leaderboard_advanced.csv\n",
      "\n",
      "最佳模型: WeightedEnsemble_L3\n",
      "最佳分数 (Macro-F1): 0.606428\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "These features in provided data are not utilized by the predictor and will be ignored: ['AST_AUM_BAL_MAX', 'total_page_visits', 'total_model_visits', 'page_4d7657ebef934018009273047fc36e4f_last_visit', 'module_f922b886e82201a198513c4f00408a4b_last_visit', 'total_visit_count', 'visit_days_min', 'daily_visits_mean', 'daily_visits_max', 'daily_visits_min', 'daily_visits_std', 'first_visit_days', 'last_visit_days', 'm0_visit_count', 'm0_page_nunique', 'm0_module_nunique', 'm1_visit_count', 'm1_page_nunique', 'm1_module_nunique', 'm2_visit_count', 'm2_page_nunique', 'm2_module_nunique', 'daily_unique_pages_mean', 'daily_unique_pages_max', 'daily_unique_pages_std', 'mb_trnflw_top8_transcode_amount_mean', 'NATURE_AGE_BY_SEX_STD', 'aps_txn_count_7d', 'aps_txn_count_15d', 'aps_txn_count_30d', 'aps_txn_count_60d', 'aps_txn_count_90d', 'aps_last_month_amt', 'TPAY_MOTH_NET_RATE', 'TPAY_SEAN_NET_RATE']\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "模型信息摘要:\n",
      "  训练的模型总数: 25\n",
      "  最佳模型: WeightedEnsemble_L3\n",
      "  问题类型: multiclass\n",
      "  评估指标: macro_f1\n",
      "\n",
      "====================================================================================================\n",
      "特征重要性分析\n",
      "====================================================================================================\n",
      "\n",
      "计算特征重要性...\n",
      "提示: 使用优化参数加速计算 (subsample_size=5000, num_shuffle_sets=1)\n"
     ]
    }
   ],
   "source": [
    "print(\"=\"*100)\n",
    "print(\"步骤7: 高级模型全面评估\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 设置日志级别，减少Loading日志\n",
    "import logging\n",
    "logging.getLogger('autogluon').setLevel(logging.WARNING)\n",
    "\n",
    "# 1. 查看完整排行榜\n",
    "leaderboard_advanced = predictor_advanced.leaderboard(silent=True, extra_info=True)\n",
    "print(\"\\n完整模型排行榜:\")\n",
    "print(leaderboard_advanced)\n",
    "\n",
    "# 保存排行榜\n",
    "leaderboard_file = './model/leaderboard_advanced.csv'\n",
    "leaderboard_advanced.to_csv(leaderboard_file, index=True)\n",
    "print(f\"\\n排行榜已保存: {leaderboard_file}\")\n",
    "\n",
    "# 2. 获取最佳模型\n",
    "best_model_advanced_name = leaderboard_advanced.iloc[0]['model']\n",
    "best_model_advanced_score = leaderboard_advanced.iloc[0]['score_val']\n",
    "print(f\"\\n最佳模型: {best_model_advanced_name}\")\n",
    "print(f\"最佳分数 (Macro-F1): {best_model_advanced_score:.6f}\")\n",
    "\n",
    "# 3. 模型信息摘要\n",
    "model_info = predictor_advanced.info()\n",
    "print(f\"\\n模型信息摘要:\")\n",
    "print(f\"  训练的模型总数: {len(model_info['model_info'])}\")\n",
    "print(f\"  最佳模型: {model_info['best_model']}\")\n",
    "print(f\"  问题类型: {model_info['problem_type']}\")\n",
    "print(f\"  评估指标: {model_info['eval_metric']}\")\n",
    "\n",
    "# 4. 特征重要性分析\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"特征重要性分析\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "print(f\"\\n计算特征重要性...\")\n",
    "print(f\"提示: 使用优化参数加速计算 (subsample_size=5000, num_shuffle_sets=1)\")\n",
    "    \n",
    "feature_importance_advanced = predictor_advanced.feature_importance(\n",
    "    data=train_data_ag,\n",
    "    subsample_size=2000,  # 只使用5000个样本 \n",
    "    num_shuffle_sets=1,   # 只shuffle 1次 \n",
    "    time_limit=60,        # 限制60秒\n",
    "    silent=True  # 改为True，去掉Loading日志\n",
    ")\n",
    "print(f\"\\nTop 30 重要特征:\")\n",
    "print(feature_importance_advanced.head(30))\n",
    "\n",
    "# 保存特征重要性\n",
    "feature_importance_file = './model/feature_importance_advanced.csv'\n",
    "feature_importance_advanced.to_csv(feature_importance_file)\n",
    "print(f\"\\n特征重要性已保存: {feature_importance_file}\")\n",
    "\n",
    "# 可视化特征重要性\n",
    "plt.figure(figsize=(12, 8))\n",
    "top_features = feature_importance_advanced.head(20)\n",
    "plt.barh(range(len(top_features)), top_features['importance'])\n",
    "plt.yticks(range(len(top_features)), top_features.index)  # 使用index而不是'feature'列\n",
    "plt.xlabel('Importance')\n",
    "plt.title('Top 20 Feature Importance')\n",
    "plt.tight_layout()\n",
    "plt.savefig('./model/feature_importance_plot.png', dpi=150, bbox_inches='tight')\n",
    "print(\"特征重要性图已保存: ./model/feature_importance_plot.png\")\n",
    "plt.show()\n",
    "\n",
    "# 5. 模型验证性能说明\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"模型验证性能说明\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 6. 训练数据标签分布分析\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"训练集标签分布\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "print(f\"\\n训练集各类别样本数:\")\n",
    "for label, count in label_dist.items():\n",
    "    rate = count / len(y_train) * 100\n",
    "    print(f\"  类别 {label}: {count:6d} ({rate:5.2f}%)\")\n",
    "\n",
    "print(f\"\\n总样本数: {len(y_train)}\")\n",
    "print(f\"类别数量: {len(label_dist)}\")\n",
    "print(f\"样本不平衡比: {imbalance_ratio:.2f}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "58477ec5",
   "metadata": {},
   "source": [
    "## 测试集预测与结果生成"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "id": "2af5adba",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "====================================================================================================\n",
      "步骤8: 测试集预测\n",
      "====================================================================================================\n",
      "\n",
      "开始预测测试集...\n",
      "测试集预测完成!\n",
      "测试集样本数: 5975\n",
      "\n",
      "测试集预测标签分布:\n",
      "  类别 1:    149 ( 2.49%)\n",
      "  类别 3:      7 ( 0.12%)\n",
      "  类别 4:   2916 (48.80%)\n",
      "  类别 5:    992 (16.60%)\n",
      "  类别 6:     52 ( 0.87%)\n",
      "  类别 7:     69 ( 1.15%)\n",
      "  类别 8:    288 ( 4.82%)\n",
      "  类别 9:   1502 (25.14%)\n",
      "\n",
      "训练集与测试集标签分布对比:\n",
      "类别         训练集比例           测试集比例           差异        \n",
      "-------------------------------------------------------\n",
      "1            2.84%           2.49%          -0.34%\n",
      "2            0.60%           0.00%          -0.60%\n",
      "3           10.87%           0.12%         -10.75%\n",
      "4           29.77%          48.80%         +19.03%\n",
      "5           15.94%          16.60%          +0.66%\n",
      "6           19.96%           0.87%         -19.09%\n",
      "7            2.48%           1.15%          -1.33%\n",
      "8            4.86%           4.82%          -0.04%\n",
      "9           12.60%          25.14%         +12.54%\n",
      "10           0.07%           0.00%          -0.07%\n",
      "\n",
      "测试集预测概率统计:\n",
      "\n",
      "类别 1:\n",
      "  均值: 0.0254, 标准差: 0.0942\n",
      "  范围: [0.0010, 0.8001]\n",
      "\n",
      "类别 2:\n",
      "  均值: 0.0066, 标准差: 0.0161\n",
      "  范围: [0.0003, 0.3453]\n",
      "\n",
      "类别 3:\n",
      "  均值: 0.0140, 标准差: 0.0358\n",
      "  范围: [0.0035, 0.4323]\n",
      "\n",
      "类别 4:\n",
      "  均值: 0.4696, 标准差: 0.3554\n",
      "  范围: [0.0101, 0.9644]\n",
      "\n",
      "类别 5:\n",
      "  均值: 0.1783, 标准差: 0.3383\n",
      "  范围: [0.0057, 0.9715]\n",
      "\n",
      "类别 6:\n",
      "  均值: 0.0240, 标准差: 0.0509\n",
      "  范围: [0.0065, 0.6213]\n",
      "\n",
      "类别 7:\n",
      "  均值: 0.0270, 标准差: 0.0835\n",
      "  范围: [0.0010, 0.9574]\n",
      "\n",
      "类别 8:\n",
      "  均值: 0.0406, 标准差: 0.1534\n",
      "  范围: [0.0017, 0.9217]\n",
      "\n",
      "类别 9:\n",
      "  均值: 0.2144, 标准差: 0.2761\n",
      "  范围: [0.0043, 0.9048]\n",
      "\n",
      "类别 10:\n",
      "  均值: 0.0002, 标准差: 0.0002\n",
      "  范围: [0.0000, 0.0036]\n",
      "测试集预测完成!\n",
      "测试集样本数: 5975\n",
      "\n",
      "测试集预测标签分布:\n",
      "  类别 1:    149 ( 2.49%)\n",
      "  类别 3:      7 ( 0.12%)\n",
      "  类别 4:   2916 (48.80%)\n",
      "  类别 5:    992 (16.60%)\n",
      "  类别 6:     52 ( 0.87%)\n",
      "  类别 7:     69 ( 1.15%)\n",
      "  类别 8:    288 ( 4.82%)\n",
      "  类别 9:   1502 (25.14%)\n",
      "\n",
      "训练集与测试集标签分布对比:\n",
      "类别         训练集比例           测试集比例           差异        \n",
      "-------------------------------------------------------\n",
      "1            2.84%           2.49%          -0.34%\n",
      "2            0.60%           0.00%          -0.60%\n",
      "3           10.87%           0.12%         -10.75%\n",
      "4           29.77%          48.80%         +19.03%\n",
      "5           15.94%          16.60%          +0.66%\n",
      "6           19.96%           0.87%         -19.09%\n",
      "7            2.48%           1.15%          -1.33%\n",
      "8            4.86%           4.82%          -0.04%\n",
      "9           12.60%          25.14%         +12.54%\n",
      "10           0.07%           0.00%          -0.07%\n",
      "\n",
      "测试集预测概率统计:\n",
      "\n",
      "类别 1:\n",
      "  均值: 0.0254, 标准差: 0.0942\n",
      "  范围: [0.0010, 0.8001]\n",
      "\n",
      "类别 2:\n",
      "  均值: 0.0066, 标准差: 0.0161\n",
      "  范围: [0.0003, 0.3453]\n",
      "\n",
      "类别 3:\n",
      "  均值: 0.0140, 标准差: 0.0358\n",
      "  范围: [0.0035, 0.4323]\n",
      "\n",
      "类别 4:\n",
      "  均值: 0.4696, 标准差: 0.3554\n",
      "  范围: [0.0101, 0.9644]\n",
      "\n",
      "类别 5:\n",
      "  均值: 0.1783, 标准差: 0.3383\n",
      "  范围: [0.0057, 0.9715]\n",
      "\n",
      "类别 6:\n",
      "  均值: 0.0240, 标准差: 0.0509\n",
      "  范围: [0.0065, 0.6213]\n",
      "\n",
      "类别 7:\n",
      "  均值: 0.0270, 标准差: 0.0835\n",
      "  范围: [0.0010, 0.9574]\n",
      "\n",
      "类别 8:\n",
      "  均值: 0.0406, 标准差: 0.1534\n",
      "  范围: [0.0017, 0.9217]\n",
      "\n",
      "类别 9:\n",
      "  均值: 0.2144, 标准差: 0.2761\n",
      "  范围: [0.0043, 0.9048]\n",
      "\n",
      "类别 10:\n",
      "  均值: 0.0002, 标准差: 0.0002\n",
      "  范围: [0.0000, 0.0036]\n"
     ]
    }
   ],
   "source": [
    "print(\"=\"*100)\n",
    "print(\"步骤8: 测试集预测\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 预测测试集\n",
    "print(\"\\n开始预测测试集...\")\n",
    "test_pred_advanced = predictor_advanced.predict(test_data_ag)\n",
    "test_pred_proba_advanced = predictor_advanced.predict_proba(test_data_ag)\n",
    "\n",
    "print(f\"测试集预测完成!\")\n",
    "print(f\"测试集样本数: {len(test_pred_advanced)}\")\n",
    "\n",
    "# 测试集预测标签分布\n",
    "print(f\"\\n测试集预测标签分布:\")\n",
    "test_pred_dist_advanced = pd.Series(test_pred_advanced).value_counts().sort_index()\n",
    "for label, count in test_pred_dist_advanced.items():\n",
    "    rate = count / len(test_pred_advanced) * 100\n",
    "    print(f\"  类别 {label}: {count:6d} ({rate:5.2f}%)\")\n",
    "\n",
    "# 与训练集分布对比\n",
    "print(f\"\\n训练集与测试集标签分布对比:\")\n",
    "print(f\"{'类别':<10} {'训练集比例':<15} {'测试集比例':<15} {'差异':<10}\")\n",
    "print(\"-\" * 55)\n",
    "for label in sorted(label_dist.index):\n",
    "    train_rate = label_dist[label] / len(y_train) * 100\n",
    "    test_rate = test_pred_dist_advanced.get(label, 0) / len(test_pred_advanced) * 100\n",
    "    diff = test_rate - train_rate\n",
    "    print(f\"{label:<10} {train_rate:>6.2f}%{'':<8} {test_rate:>6.2f}%{'':<8} {diff:>+6.2f}%\")\n",
    "\n",
    "# 测试集预测概率统计\n",
    "print(f\"\\n测试集预测概率统计:\")\n",
    "for class_idx in range(test_pred_proba_advanced.shape[1]):\n",
    "    class_name = test_pred_proba_advanced.columns[class_idx]\n",
    "    proba_mean = test_pred_proba_advanced[class_name].mean()\n",
    "    proba_std = test_pred_proba_advanced[class_name].std()\n",
    "    proba_max = test_pred_proba_advanced[class_name].max()\n",
    "    proba_min = test_pred_proba_advanced[class_name].min()\n",
    "    \n",
    "    print(f\"\\n类别 {class_name}:\")\n",
    "    print(f\"  均值: {proba_mean:.4f}, 标准差: {proba_std:.4f}\")\n",
    "    print(f\"  范围: [{proba_min:.4f}, {proba_max:.4f}]\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ee2bfa23",
   "metadata": {},
   "source": [
    "## 验证集对照"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "id": "dbfdf152",
   "metadata": {},
   "outputs": [],
   "source": [
    "valid_data = pd.read_csv('./A_TARGET_VALID.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "id": "27838633",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>DATA_DAT</th>\n",
       "      <th>CUST_NO</th>\n",
       "      <th>FLAG</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>20250731</td>\n",
       "      <td>13ef4241a1959ccbcf8d8a30f0ed9d50</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>20250731</td>\n",
       "      <td>029dede087234ee034590abefc4731a9</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>20250731</td>\n",
       "      <td>929838a9271aa18da0ad8cb5154ce591</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>20250731</td>\n",
       "      <td>51b04b6d47643e0f5303c38a429557d5</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>20250731</td>\n",
       "      <td>a54db8a4f36e43e9390cf3e43d45f308</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   DATA_DAT                           CUST_NO  FLAG\n",
       "0  20250731  13ef4241a1959ccbcf8d8a30f0ed9d50     9\n",
       "1  20250731  029dede087234ee034590abefc4731a9     9\n",
       "2  20250731  929838a9271aa18da0ad8cb5154ce591     4\n",
       "3  20250731  51b04b6d47643e0f5303c38a429557d5     2\n",
       "4  20250731  a54db8a4f36e43e9390cf3e43d45f308     9"
      ]
     },
     "execution_count": 59,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "valid_data.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "id": "d9d74011",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 创建提交结果DataFrame\n",
    "result_advanced_df = pd.DataFrame({\n",
    "    'CUST_NO': test_cust_no,\n",
    "    'FLAG': test_pred_advanced\n",
    "})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "id": "20c948f1",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "====================================================================================================\n",
      "步骤8.5: 验证集评估 - 高级模型\n",
      "====================================================================================================\n",
      "\n",
      "验证集信息:\n",
      "  验证集总样本数: 5975\n",
      "  匹配成功样本数: 5975\n",
      "  匹配率: 100.00%\n",
      "\n",
      "====================================================================================================\n",
      "【高级模型】验证集 Macro-F1 分数: 0.442329\n",
      "====================================================================================================\n",
      "\n",
      "验证集详细分类报告:\n",
      "              precision    recall  f1-score   support\n",
      "\n",
      "           1     0.5973    0.5266    0.5597       169\n",
      "           2     0.0000    0.0000    0.0000        73\n",
      "           3     0.0000    0.0000    0.0000         0\n",
      "           4     0.8460    0.8259    0.8358      2987\n",
      "           5     0.9415    0.8745    0.9068      1068\n",
      "           6     0.0000    0.0000    0.0000         0\n",
      "           7     0.7826    0.3942    0.5243       137\n",
      "           8     0.8750    0.9000    0.8873       280\n",
      "           9     0.6498    0.7808    0.7093      1250\n",
      "          10     0.0000    0.0000    0.0000        11\n",
      "\n",
      "    accuracy                         0.7987      5975\n",
      "   macro avg     0.4692    0.4302    0.4423      5975\n",
      "weighted avg     0.8030    0.7987    0.7978      5975\n",
      "\n",
      "\n",
      "混淆矩阵:\n",
      "[[  89    0    0   44    4    0    1    0   31    0]\n",
      " [   3    0    1   31    1    0    0    0   37    0]\n",
      " [   0    0    0    0    0    0    0    0    0    0]\n",
      " [  35    0    3 2467   34   28    7   22  391    0]\n",
      " [   0    0    0   90  934    3    3   10   28    0]\n",
      " [   0    0    0    0    0    0    0    0    0    0]\n",
      " [   1    0    0   38    3    1   54    2   38    0]\n",
      " [   0    0    0   18    7    2    1  252    0    0]\n",
      " [  21    0    3  218    9   18    3    2  976    0]\n",
      " [   0    0    0   10    0    0    0    0    1    0]]\n",
      "\n",
      "混淆矩阵图已保存: ./model/confusion_matrix_valid_advanced.png\n",
      "\n",
      "混淆矩阵图已保存: ./model/confusion_matrix_valid_advanced.png\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 1000x800 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "验证集标签分布对比:\n",
      "类别         真实数量            预测数量            真实比例            预测比例           \n",
      "---------------------------------------------------------------------------\n",
      "1             169             149            2.83%           2.49%\n",
      "2              73               0            1.22%           0.00%\n",
      "3               0               7            0.00%           0.12%\n",
      "4            2987            2916           49.99%          48.80%\n",
      "5            1068             992           17.87%          16.60%\n",
      "6               0              52            0.00%           0.87%\n",
      "7             137              69            2.29%           1.15%\n",
      "8             280             288            4.69%           4.82%\n",
      "9            1250            1502           20.92%          25.14%\n",
      "10             11               0            0.18%           0.00%\n",
      "\n",
      "验证结果已保存: ./model/validation_result_advanced.csv\n",
      "\n",
      "模型性能对比:\n",
      "  训练集 Macro-F1: 0.606428\n",
      "  验证集 Macro-F1: 0.442329\n",
      "  差异: 0.164099\n"
     ]
    }
   ],
   "source": [
    "print(\"=\"*100)\n",
    "print(\"步骤8.5: 验证集评估 - 高级模型\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 合并预测结果和验证集真实标签\n",
    "result_advanced_df_merged = result_advanced_df.merge(\n",
    "    valid_data, \n",
    "    on='CUST_NO', \n",
    "    how='inner',\n",
    "    suffixes=('_pred', '_true')\n",
    ")\n",
    "\n",
    "print(f\"\\n验证集信息:\")\n",
    "print(f\"  验证集总样本数: {len(valid_data)}\")\n",
    "print(f\"  匹配成功样本数: {len(result_advanced_df_merged)}\")\n",
    "print(f\"  匹配率: {len(result_advanced_df_merged)/len(valid_data)*100:.2f}%\")\n",
    "\n",
    "# 提取预测标签和真实标签\n",
    "y_pred_valid = result_advanced_df_merged['FLAG_pred']\n",
    "y_true_valid = result_advanced_df_merged['FLAG_true']\n",
    "\n",
    "# 计算Macro-F1分数\n",
    "from sklearn.metrics import f1_score, classification_report, confusion_matrix\n",
    "macro_f1_valid = f1_score(y_true_valid, y_pred_valid, average='macro')\n",
    "\n",
    "print(f\"\\n\" + \"=\"*100)\n",
    "print(f\"【高级模型】验证集 Macro-F1 分数: {macro_f1_valid:.6f}\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 详细分类报告\n",
    "print(f\"\\n验证集详细分类报告:\")\n",
    "print(classification_report(y_true_valid, y_pred_valid, digits=4))\n",
    "\n",
    "# 混淆矩阵\n",
    "conf_matrix_valid = confusion_matrix(y_true_valid, y_pred_valid)\n",
    "print(f\"\\n混淆矩阵:\")\n",
    "print(conf_matrix_valid)\n",
    "\n",
    "# 可视化混淆矩阵\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "\n",
    "plt.figure(figsize=(10, 8))\n",
    "sns.heatmap(conf_matrix_valid, annot=True, fmt='d', cmap='Blues')\n",
    "plt.xlabel('Predicted')\n",
    "plt.ylabel('Actual')\n",
    "plt.title(f'Confusion Matrix - Validation Set (Macro-F1: {macro_f1_valid:.6f})')\n",
    "plt.tight_layout()\n",
    "plt.savefig('./model/confusion_matrix_valid_advanced.png', dpi=150, bbox_inches='tight')\n",
    "print(f\"\\n混淆矩阵图已保存: ./model/confusion_matrix_valid_advanced.png\")\n",
    "plt.show()\n",
    "\n",
    "# 各类别预测统计\n",
    "print(f\"\\n验证集标签分布对比:\")\n",
    "print(f\"{'类别':<10} {'真实数量':<15} {'预测数量':<15} {'真实比例':<15} {'预测比例':<15}\")\n",
    "print(\"-\" * 75)\n",
    "\n",
    "true_dist = y_true_valid.value_counts().sort_index()\n",
    "pred_dist = y_pred_valid.value_counts().sort_index()\n",
    "\n",
    "for label in sorted(set(list(true_dist.index) + list(pred_dist.index))):\n",
    "    true_count = true_dist.get(label, 0)\n",
    "    pred_count = pred_dist.get(label, 0)\n",
    "    true_rate = true_count / len(y_true_valid) * 100\n",
    "    pred_rate = pred_count / len(y_pred_valid) * 100\n",
    "    print(f\"{label:<10} {true_count:>6d}{'':<9} {pred_count:>6d}{'':<9} {true_rate:>6.2f}%{'':<8} {pred_rate:>6.2f}%\")\n",
    "\n",
    "# 保存验证结果\n",
    "valid_result_file = './model/validation_result_advanced.csv'\n",
    "result_advanced_df_merged.to_csv(valid_result_file, index=False)\n",
    "print(f\"\\n验证结果已保存: {valid_result_file}\")\n",
    "\n",
    "print(f\"\\n模型性能对比:\")\n",
    "print(f\"  训练集 Macro-F1: {best_model_advanced_score:.6f}\")\n",
    "print(f\"  验证集 Macro-F1: {macro_f1_valid:.6f}\")\n",
    "print(f\"  差异: {best_model_advanced_score - macro_f1_valid:.6f}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3c7d093b",
   "metadata": {},
   "source": [
    "## 生成提交文件"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "5eed2fe2",
   "metadata": {},
   "outputs": [],
   "source": [
    "print(\"=\"*100)\n",
    "print(\"步骤9: 生成提交文件\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 创建提交结果DataFrame\n",
    "result_advanced_df = pd.DataFrame({\n",
    "    'CUST_NO': test_cust_no,\n",
    "    'FLAG': test_pred_advanced\n",
    "})\n",
    "\n",
    "# 保存高级模型预测结果(带表头,用于查看)\n",
    "result_with_header_file = './model/result_advanced_with_header.csv'\n",
    "result_advanced_df.to_csv(result_with_header_file, index=False)\n",
    "print(f\"\\n预测结果(带表头)已保存: {result_with_header_file}\")\n",
    "\n",
    "# 保存提交文件(无表头,按照赛题要求)\n",
    "submission_file = './model/upload.csv'\n",
    "result_advanced_df.to_csv(submission_file, index=False, header=False)\n",
    "print(f\"提交文件(无表头)已保存: {submission_file}\")\n",
    "\n",
    "# 保存预测概率文件\n",
    "proba_file = './model/test_pred_proba_advanced.csv'\n",
    "test_pred_proba_df = pd.concat([\n",
    "    pd.DataFrame({'CUST_NO': test_cust_no}),\n",
    "    test_pred_proba_advanced\n",
    "], axis=1)\n",
    "test_pred_proba_df.to_csv(proba_file, index=False)\n",
    "print(f\"预测概率文件已保存: {proba_file}\")\n",
    "\n",
    "# 显示前10行预测结果\n",
    "print(f\"\\n预测结果预览(前10行):\")\n",
    "print(result_advanced_df.head(10))\n",
    "\n",
    "# 文件大小检查\n",
    "import os\n",
    "file_size = os.path.getsize(submission_file) / 1024\n",
    "print(f\"\\n提交文件大小: {file_size:.2f} KB\")\n",
    "\n",
    "# 格式检查\n",
    "print(f\"\\n提交文件格式检查:\")\n",
    "with open(submission_file, 'r') as f:\n",
    "    first_lines = [f.readline().strip() for _ in range(5)]\n",
    "    print(\"前5行内容:\")\n",
    "    for i, line in enumerate(first_lines, 1):\n",
    "        parts = line.split(',')\n",
    "        print(f\"  行{i}: {line} (字段数: {len(parts)})\")\n",
    "\n",
    "print(f\"\\n格式说明:\")\n",
    "print(f\"  - 文件名: upload.csv\")\n",
    "print(f\"  - 编码: utf-8\")\n",
    "print(f\"  - 分隔符: 半角逗号\")\n",
    "print(f\"  - 内容: 客户号,产品类别\")\n",
    "print(f\"  - 无表头\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "73639c37",
   "metadata": {},
   "source": [
    "## 模型性能总结与优化建议"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "584f628c",
   "metadata": {},
   "outputs": [],
   "source": [
    "print(\"=\"*100)\n",
    "print(\"步骤10: 模型性能总结与优化建议\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "# 创建性能报告\n",
    "performance_report = {\n",
    "    '模型版本': ['初级模型', '高级模型'],\n",
    "    '训练时间': ['15分钟', '3小时'],\n",
    "    '模型数量': [\n",
    "        len(predictor_quick.model_names()), \n",
    "        len(predictor_advanced.model_names())\n",
    "    ],\n",
    "    '训练集Macro-F1': [\n",
    "        f\"{train_macro_f1_quick:.6f}\",\n",
    "        f\"{train_macro_f1_advanced:.6f}\"\n",
    "    ],\n",
    "    'Bagging折数': [5, 5],\n",
    "    'Bagging组数': [1, 2],\n",
    "    'Stacking层数': [0, 2],\n",
    "}\n",
    "\n",
    "performance_df = pd.DataFrame(performance_report)\n",
    "print(\"\\n模型性能对比:\")\n",
    "print(performance_df.to_string(index=False))\n",
    "\n",
    "# 保存性能报告\n",
    "performance_file = './model/performance_report.csv'\n",
    "performance_df.to_csv(performance_file, index=False)\n",
    "print(f\"\\n性能报告已保存: {performance_file}\")\n",
    "\n",
    "# 优化建议\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"优化建议\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "print(\"\\n1. 特征工程优化:\")\n",
    "print(\"   - 基于Top重要特征,进行特征交叉组合\")\n",
    "print(\"   - 对高重要性数值特征进行分箱离散化\")\n",
    "print(\"   - 尝试基于业务逻辑的特征衍生\")\n",
    "print(\"   - 使用TargetEncoder对类别特征编码\")\n",
    "\n",
    "print(\"\\n2. 模型优化:\")\n",
    "print(\"   - 增加训练时间,尝试更多超参数组合\")\n",
    "print(\"   - 调整Stacking层数(可尝试3层)\")\n",
    "print(\"   - 针对表现较差的类别,进行单独调优\")\n",
    "print(\"   - 尝试加权集成(给高分模型更大权重)\")\n",
    "\n",
    "print(\"\\n3. 样本优化:\")\n",
    "print(\"   - 如果存在严重类别不平衡,使用SMOTE过采样\")\n",
    "print(\"   - 尝试类别权重调整\")\n",
    "print(\"   - 考虑难样本挖掘策略\")\n",
    "\n",
    "print(\"\\n4. 验证策略:\")\n",
    "print(\"   - 使用StratifiedKFold确保各折类别分布一致\")\n",
    "print(\"   - 尝试时间序列交叉验证(如果有时间特征)\")\n",
    "print(\"   - 多次运行取平均,降低随机性影响\")\n",
    "\n",
    "print(\"\\n5. 后处理优化:\")\n",
    "print(\"   - 阈值优化:针对每个类别寻找最优分类阈值\")\n",
    "print(\"   - 概率校准:使用CalibratedClassifierCV\")\n",
    "print(\"   - 规则修正:基于业务规则对异常预测进行修正\")\n",
    "\n",
    "# 关键特征分析\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"关键特征分析(Top 10)\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "top10_features = feature_importance_advanced.head(10)\n",
    "print(\"\\n根据特征重要性排名,以下特征对模型预测影响最大:\")\n",
    "for idx, (feat, imp) in enumerate(zip(top10_features['feature'], top10_features['importance']), 1):\n",
    "    print(f\"{idx:2d}. {feat:50s} (重要性: {imp:.4f})\")\n",
    "\n",
    "print(\"\\n建议:\")\n",
    "print(\"  - 重点关注这些特征的质量和准确性\")\n",
    "print(\"  - 基于这些特征进行特征交叉\")\n",
    "print(\"  - 分析这些特征与目标变量的关系\")\n",
    "\n",
    "# 模型文件列表\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"生成的模型文件\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "model_files = [\n",
    "    './model/autogluon_quick/',\n",
    "    './model/autogluon_advanced/',\n",
    "    './model/result_quick.csv',\n",
    "    './model/upload.csv',\n",
    "    './model/result_advanced_with_header.csv',\n",
    "    './model/test_pred_proba_advanced.csv',\n",
    "    './model/leaderboard_advanced.csv',\n",
    "    './model/feature_importance_advanced.csv',\n",
    "    './model/feature_importance_plot.png',\n",
    "    './model/confusion_matrix_train.png',\n",
    "    './model/performance_report.csv',\n",
    "]\n",
    "\n",
    "print(\"\\n生成的文件列表:\")\n",
    "for i, file_path in enumerate(model_files, 1):\n",
    "    if os.path.exists(file_path):\n",
    "        if os.path.isdir(file_path):\n",
    "            size = sum(os.path.getsize(os.path.join(file_path, f)) \n",
    "                      for f in os.listdir(file_path) if os.path.isfile(os.path.join(file_path, f)))\n",
    "            size_str = f\"{size / 1024 / 1024:.2f} MB\"\n",
    "        else:\n",
    "            size_str = f\"{os.path.getsize(file_path) / 1024:.2f} KB\"\n",
    "        print(f\"  {i:2d}. {file_path:60s} ({size_str})\")\n",
    "    else:\n",
    "        print(f\"  {i:2d}. {file_path:60s} (不存在)\")\n",
    "\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"建模训练流程完成!\")\n",
    "print(\"=\"*100)\n",
    "print(\"\\n最终提交文件: ./model/upload.csv\")\n",
    "print(f\"训练集Macro-F1: {train_macro_f1_advanced:.6f}\")\n",
    "print(\"\\n祝比赛取得好成绩!\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "599cea0d",
   "metadata": {},
   "source": [
    "## 额外优化 - 阈值调整与后处理"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "0a1e7fc3",
   "metadata": {},
   "outputs": [],
   "source": [
    "print(\"=\"*100)\n",
    "print(\"额外优化: 阈值调整与后处理\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "print(\"\\n说明: 该步骤为可选优化,通过调整分类阈值来进一步提升Macro-F1分数\")\n",
    "print(\"如果初始模型效果已经很好,可以跳过此步骤\")\n",
    "\n",
    "# 获取训练集预测概率\n",
    "train_proba_for_threshold = predictor_advanced.predict_proba(train_data_ag.drop(columns=['FLAG']))\n",
    "\n",
    "# 为每个类别寻找最优阈值\n",
    "def find_optimal_thresholds(y_true, y_proba, n_classes):\n",
    "    \"\"\"\n",
    "    为多分类问题寻找最优阈值\n",
    "    \n",
    "    思路:\n",
    "    1. 对于每个样本,选择概率最大的类别作为预测\n",
    "    2. 但可以为每个类别设置最小概率阈值\n",
    "    3. 如果所有类别概率都低于阈值,则选择概率最大的\n",
    "    \"\"\"\n",
    "    optimal_thresholds = {}\n",
    "    \n",
    "    # 尝试不同的阈值\n",
    "    threshold_values = np.arange(0.1, 0.9, 0.05)\n",
    "    \n",
    "    best_macro_f1 = 0\n",
    "    best_threshold = 0.0\n",
    "    \n",
    "    for threshold in threshold_values:\n",
    "        # 基于阈值进行预测\n",
    "        predictions = []\n",
    "        for i in range(len(y_proba)):\n",
    "            row_proba = y_proba.iloc[i].values\n",
    "            max_proba = row_proba.max()\n",
    "            max_class = row_proba.argmax()\n",
    "            \n",
    "            # 如果最大概率低于阈值,则使用默认预测\n",
    "            if max_proba < threshold:\n",
    "                predictions.append(max_class)\n",
    "            else:\n",
    "                predictions.append(max_class)\n",
    "        \n",
    "        # 计算Macro-F1\n",
    "        macro_f1 = macro_f1_score(y_true, predictions)\n",
    "        \n",
    "        if macro_f1 > best_macro_f1:\n",
    "            best_macro_f1 = macro_f1\n",
    "            best_threshold = threshold\n",
    "    \n",
    "    print(f\"\\n阈值搜索结果:\")\n",
    "    print(f\"  最佳阈值: {best_threshold:.2f}\")\n",
    "    print(f\"  对应Macro-F1: {best_macro_f1:.6f}\")\n",
    "    print(f\"  原始Macro-F1: {macro_f1_score(y_true, y_proba.values.argmax(axis=1)):.6f}\")\n",
    "    print(f\"  提升: {best_macro_f1 - macro_f1_score(y_true, y_proba.values.argmax(axis=1)):.6f}\")\n",
    "    \n",
    "    return best_threshold, best_macro_f1\n",
    "\n",
    "# 进行阈值搜索\n",
    "optimal_threshold, optimized_macro_f1 = find_optimal_thresholds(\n",
    "    y_train, \n",
    "    train_proba_for_threshold, \n",
    "    len(y_train.unique())\n",
    ")\n",
    "\n",
    "# 使用最优阈值对测试集进行预测\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"使用优化阈值预测测试集\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "test_predictions_optimized = []\n",
    "for i in range(len(test_pred_proba_advanced)):\n",
    "    row_proba = test_pred_proba_advanced.iloc[i].values\n",
    "    max_proba = row_proba.max()\n",
    "    max_class = row_proba.argmax()\n",
    "    test_predictions_optimized.append(max_class)\n",
    "\n",
    "# 将预测结果转换为原始标签\n",
    "test_pred_optimized = pd.Series(test_predictions_optimized).map(\n",
    "    dict(enumerate(sorted(y_train.unique())))\n",
    ")\n",
    "\n",
    "print(f\"\\n优化后测试集预测标签分布:\")\n",
    "test_pred_dist_optimized = test_pred_optimized.value_counts().sort_index()\n",
    "for label, count in test_pred_dist_optimized.items():\n",
    "    rate = count / len(test_pred_optimized) * 100\n",
    "    print(f\"  类别 {label}: {count:6d} ({rate:5.2f}%)\")\n",
    "\n",
    "# 保存优化后的结果\n",
    "result_optimized_df = pd.DataFrame({\n",
    "    'CUST_NO': test_cust_no,\n",
    "    'FLAG': test_pred_optimized\n",
    "})\n",
    "\n",
    "submission_optimized_file = './model/upload_optimized.csv'\n",
    "result_optimized_df.to_csv(submission_optimized_file, index=False, header=False)\n",
    "print(f\"\\n优化后的提交文件已保存: {submission_optimized_file}\")\n",
    "\n",
    "# 对比两个版本\n",
    "print(\"\\n\" + \"=\"*100)\n",
    "print(\"优化前后对比\")\n",
    "print(\"=\"*100)\n",
    "\n",
    "comparison_df = pd.DataFrame({\n",
    "    '版本': ['原始模型', '阈值优化后'],\n",
    "    '训练集Macro-F1': [\n",
    "        f\"{train_macro_f1_advanced:.6f}\",\n",
    "        f\"{optimized_macro_f1:.6f}\"\n",
    "    ],\n",
    "    '提交文件': [\n",
    "        './model/upload.csv',\n",
    "        './model/upload_optimized.csv'\n",
    "    ]\n",
    "})\n",
    "print(\"\\n\" + comparison_df.to_string(index=False))\n",
    "\n",
    "print(\"\\n建议:\")\n",
    "print(\"  - 如果优化后Macro-F1提升明显(>0.001),建议使用优化版本\")\n",
    "print(\"  - 如果提升不明显,使用原始版本即可\")\n",
    "print(\"  - 可以在线上测试两个版本,选择得分更高的\")"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "starcup",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.18"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
